Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length

 
Advanced search

998192 Posts in 39146 Topics- by 30558 Members - Latest Member: Ilya Salamatov

April 18, 2014, 03:29:08 AM
TIGSource ForumsFeedbackDevLogsBlink - A Multiplayer Management Game in Space
Pages: [1]
Print
Author Topic: Blink - A Multiplayer Management Game in Space  (Read 953 times)
Layl
Level 0
**

BEHOLD NPC, I AM YOUR GOD!


View Profile Email
« on: February 26, 2014, 07:58:25 PM »

Blink is a multiplayer focused top-down management game. Its gameplay is a combination of Dwarf Fortress style management, where your ship is your fortress and a pirate installing a brand new door in the side of your dining hall is the fun, and FTL style ship to ship combat. The name "blink" is what the NPCs in this game call the start of the world (world gen), when everything suddenly popped into existence including entire developed space stations and ships.


Latest Dev Screenshot

Current Completed Goals:
- Basic player input
- Basic multiplayer
- Basic textures
- Basic collision detection for units

Current Development Goals (mostly in order of importance):
- Basic NPC unit movement
- Basic ship movement
- Basic ship to ship combat
- Ship fuel and refueling hoses
- Some way to connect to something else than 127.0.0.1
- Ship to ship collision
- Oxigen and atmospheric systems
- Unit EVA and airlocks
- Ship building
- Resources and mining
- Shops and NPC run space stations
- Data persistence between server shutdowns
- NPC run hostile space ships
- NPC run friendly space ships (traders/transporters)
- Ship boarding
- Player run shops and space stations
« Last Edit: March 12, 2014, 07:39:46 AM by Layl » Logged
Layl
Level 0
**

BEHOLD NPC, I AM YOUR GOD!


View Profile Email
« Reply #1 on: February 26, 2014, 08:02:47 PM »

Development Update #1
Made this thread so I finally start making lists and keeping track of what is done and what has to be done. Just finished adding structure sync between server and client and added rendering code for the floors and one of the walls.

All the graphics are still placeholder squares and I need to add stars to the background. The camera doesn't even follow the player yet. I've got in the screenshot below two clients connected to the server, position being synchronized with a little example ship behind them.

Logged
Layl
Level 0
**

BEHOLD NPC, I AM YOUR GOD!


View Profile Email
« Reply #2 on: February 27, 2014, 12:18:14 PM »

Development Update #2
Finished the wall rendering code and changed the starting ship to have some more walls. The starting ship is the absolute minimum a ship can be in this game without being entirely useless. It will have a small cargo space where the space suit is kept for EVA, an airlock, 2 small engies, a cockpit, a small corridor, a life support system and a battery. It will have no means of recharging its energy so you'll have to periodically dock at a station to recharge.

The starting space ship without textures, objects or doors.
Obviously you can't fit a crew in here so you're encouraged to expand as soon as possible, this ship is just to learn the ropes and for travel.
« Last Edit: February 27, 2014, 06:27:49 PM by Layl » Logged
Layl
Level 0
**

BEHOLD NPC, I AM YOUR GOD!


View Profile Email
« Reply #3 on: February 27, 2014, 06:36:15 PM »

Development Update #3
Some more rendering work, really am enjoying writing rendering code. Added basic texture support to the engine and hard-coded tile ID 2 to use an example texture (made by someone else for this project). Refined the code a bit then added some stars in the background. Really amazing how suddenly when you add stars the game changes from a few random shapes to something vaguely recognizable.
I'll tomorrow try to add a more flexible way to define textured tiles.
« Last Edit: February 27, 2014, 06:42:30 PM by Layl » Logged
Layl
Level 0
**

BEHOLD NPC, I AM YOUR GOD!


View Profile Email
« Reply #4 on: February 28, 2014, 03:37:00 PM »

Mini Update
Didn't get much done today, I got a start on the backend for tiles in, but tile IDs still need to be synced over network. So instead I've got a little screenshot taken from my test code for generating ship names. This has as input a list of StarTrek ship names (USS stripped away) and EvE online ship names. It uses Markov chains to generate the names.
Logged
Layl
Level 0
**

BEHOLD NPC, I AM YOUR GOD!


View Profile Email
« Reply #5 on: March 04, 2014, 07:17:45 PM »

Mini Update
Another small update, took a break from this project in the weekend, during which my life got consumed by the big blob that is Space Station 13. Here's a quick screenshot of the small progress I made since I got back to work. Sure is quiet here...
Logged
Layl
Level 0
**

BEHOLD NPC, I AM YOUR GOD!


View Profile Email
« Reply #6 on: March 06, 2014, 02:51:23 PM »

Development Update #4
Mainly working on back end stuff, so I thought it would be nice to explain the way the modding API works. I try to put everything that isn't generic and part of the core engine (mostly game specific stuff) into a plugin named "SQCore". I guess it would have been better named "Blink" but back when I named it I didn't have a catchy name yet.

In this plugin, currently, there's stuff like:
- The stars in the background
- Ship/Station Tiles, Objects and Walls
- Spawn logic, like spawning the player starter ship

I'll be trying to move as much of this kind of stuff into the plugin system as I can. This way modders will have access to the same flexible systems I'm using to create the game. The entire engine is from the ground up built to support this. Even the networking part of the engine has built into it that it checks if the correct mods are installed. The client will only load the mods a server needs, and allows you to install multiple versions of the same mods to make sure two servers with different versions of a mod won't require you to constantly swap out folders.

To avoid stuff like Minecraft's item and block ID collisions, the engine is designed to automatically allocate IDs using identifier strings. For example, a packet channel named "structures.physics" might map to 4, or 7, or 24. Whatever it maps to, the client will get told by the server. The same way, tiles with as string ID "metal.generic" or "metal.corridor" will be mapped to a numeric ID as well, with the server keeping the client up to date on what those mappings are.
Logged
Layl
Level 0
**

BEHOLD NPC, I AM YOUR GOD!


View Profile Email
« Reply #7 on: March 07, 2014, 07:12:21 AM »

Development Update #4
I guess it would have been better named "Blink" but back when I named it I didn't have a catchy name yet.
Oh right I can just rename it.

Yeah I'm just gonna do that.
Logged
jonkk
Level 0
**



View Profile WWW Email
« Reply #8 on: March 07, 2014, 09:09:01 AM »

I like the look of this, even if it's super early! Look forward to seeing where this goes. Smiley
Logged

Layl
Level 0
**

BEHOLD NPC, I AM YOUR GOD!


View Profile Email
« Reply #9 on: March 07, 2014, 06:52:40 PM »

I like the look of this, even if it's super early! Look forward to seeing where this goes. Smiley

Thanks, responses like that help me through bugs like "players on joining randomly see other player's character on their ship or a phantom static character" Crazy
Logged
Layl
Level 0
**

BEHOLD NPC, I AM YOUR GOD!


View Profile Email
« Reply #10 on: March 07, 2014, 11:25:31 PM »

Here's a quick little update, with some help from people I've improved the stars in the background a lot. They look a lot better now. Other changes are mostly back-end and refining existing stuff. Also I've fixed some of the issues with parenting the camera to ships and it all works a lot better now.
Logged
Layl
Level 0
**

BEHOLD NPC, I AM YOUR GOD!


View Profile Email
« Reply #11 on: March 27, 2014, 02:32:39 PM »

Long overdue update! I've put the project to the side a week but am now back working on it. Mostly boring background stuff but here's a screenshot of me in the UI debugger trying to figure out why the the iframe doesn't load. The library I'm using for the game's UI is Coherent UI. The reason for this is that with Coherent UI, I get access to all the fancy JS libraries that exist, meaning I can make complicated stuff like graphs a lot easier.
Logged
Layl
Level 0
**

BEHOLD NPC, I AM YOUR GOD!


View Profile Email
« Reply #12 on: April 07, 2014, 04:42:17 PM »

Quick little update. More background work, here's a picture of something I've been messing with for the debug screen. Did I mention I love doughnut charts and pastel colors?
Logged
Layl
Level 0
**

BEHOLD NPC, I AM YOUR GOD!


View Profile Email
« Reply #13 on: Today at 02:06:19 AM »

Another long overdue update! I've been working on the UI a bit more. I've finally added a connect form, though the entire UI part of the game engine doesn't listen to input yet. Here's an in-engine screenshot of it. The style is blatantly ripped from heavily inspired by the steam Air skin.
Logged
Pages: [1]
Print
Jump to:  

Theme orange-lt created by panic