Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics


A member registered May 14, 2016 · View creator page →

Creator of

Recent community posts

I came here a few seconds before release, lol

You can try to remove or manualy modify settings file. It is located at C:\Users\YourName\Documents\ShipControl\ShipControl.settings (for windows) or $XDG_CONFIG_HOME/unity3d/ThaiCat/ShipControl/ShipControl.settings (XDG_CONFIG_HOME defaults to ~/.config) (for linux)

I will make UI scale with resolution in the next update, thx

My bad. For some reason I seem to be always end up with some kind of sci-fi shooter

I liked the idea of the game. The gameplay is easy to get hooked in, and the challenge difficulty is just perfect in my opinion. This is my favorite game submitted for this gamejam.

Thanks man!

Your comments are invaluable! I definitely had to add some visual feedback for the boss fight, but for now i think I will leave my submission as is.

Version 0.37.2018-03-31 (experimental-14)

Implemented mirror mode for building

implemented block painting

changed controls for building mode, system cursor is now always forced for building mode

changed sector generation algorithm, it generates save data in memory now instead of sector objects, then immediately loads it. It is very unlikely to get broken now with upcoming sector data generation changes.

changed save files format, they now use compression, compatibility with old save files is broken due to this

removed minimap & ship status windows, as they make no sense

minor bugfixes & changes

Version 0.36.2018-02-22 (experimental-13)

implemented sector unloading

implemented network visibility system

changed player spawn order

world no longer needs to be moved locally while sector respawning

improved world movement algorithm

improved authority management, players only receive authority for objects withing their network visibility scope

improved movement sync, it no longer requires to load sectors first and is far less likely to bug out

removed unnecessary monobehavior method calls (mostly server side now)

asteroids and ships are the same thing internally now

asteroids now have multiple blocks but single mesh generated at runtime (right now server only)

particularly improved target selection

broken saving and loading

minor internal fixes and optimizations

Version 0.35.2018-01-12 (experimental-12)

implemented buffering for network messages, small network messages will be packed into one big network packet, reliable network messages will no longer be lost and will be buffered if needed.

Added station that does absolutely nothing in every sector at exact same position.

updated save algorithm, it now saves ships and stations including ownership and together with health and shield values for every block. Each player must have his own unique id set up in main game screen in order to be saved and loaded (id will be automatically generated and will not be saved if left empty).

minor internal fixes

Version 0.35.2018-01-03 (experimental-11)

fixed shaking of grid and block being build

changed algorithm of resolving relationships between blocks in ship (in post within a day or 2)

blocks with mesh colliders removed from the build list

some blocks with compound colliders temporarily removed from the build list

scale of blocks now affects their health, mass, power, thrust.. etc.

minor internal fixes

Version 0.35.2017-12-24 (experimental-10)

world map updates as soon as new sector is loaded now

fixed world map network sync

(1 edit)

Version 0.35.2017-12-23 (experimental-9)

updated inventory and chat code to use unet LLAPI instead of HLAPI to sync data over network (regression fix)

game will now generate very simple world map, based on visited sectors (server only, clients will have an empty map for now, i will fix it soon)

updated save/load code to store map data, compatibility with old saves is broken

forced system cursor when navigating in menus

minor internal fixes

Due to error in my network code reliable messages are not being properly enqueued, thus causing bugs with too many objects in the sector in multiplayer. It is recommended to set sector object count to “few” when creating new world for now for testing.

It will be added, but not soon. Currently core game mechanics are priority so my roadmap looks like this:

0: Fix regressions introduced with network API change to remove them from my todo list (broken inventory sync, chat)

1: Update save/load system to make it possible to store minimum amount of data about all visited sectors, so world map can be generated without loading all the created sector files from disk one by one. This will also be used to make navigation in the world finally possible. (november 2017)

2: Once again iterate over building system to adjust block parameters (mass, power, thrust, etc.) according to their scale (dec 2017?)

?: Develop a way to unload sectors from memory when there are no players (jan 2018?)

?: Add some npc stations/ships made of 5-10 blocks, those dont move and do absolutely nothing, to further tweak save/load system to make it possible to store more then just asteroids (jan 2018? feb 2018?)

?: ??? (2018? 2028?)

?: profit!!!

I can potentially make it possible to mine asteroids in like 1 or 2 days if I will put some work in it, but it will not add any goals or gameplay value at this stage (what’s the point to have an additional counter in inventory anyway), simply because there is no use of any resources yet, and in order to make any use of it, the above mechanics and even more have to be done.

I’d say the game will stay in unplayable state for a looooong time.

Version 0.34.2017-10-31 (experimental-8)

reworked controls configuration

There is rotate feature for the camera, camera rotated by mouse when you use 2nd control scheme (free camera). Use left ctrl to toggle it, this way you can use mouse to rotate the camera instead of steering, and steer using keyboard. These controls i got used to play in another game, so i just made very similar ones in my own. If you want to press and hold a named button to rotate the camera, then yes, there is no such feature, i will add it in the next update, together with button remapping, thx for suggestion. 

I will be busy in the beginning of the month, so expect fixes in late october.

Version 0.34.2017-08-29 (experimental-7)

Changed collision detection algorithm for blocks being created, collisions are now determined using single physics update, instead of 2, and takes <0.02 seconds (old one took in between 0.02 and 0.04 seconds). Also new one provides much more reliable results and this should fix old bug with not being able to build new blocks in some cases.

Ship building now works with client authority, this means server no longer checks the data that client sends to it when building blocks and creates block instantly after the data is received. This way it works for ships those are very far from the server’s world origin (server could not calculate proper data for them). Amount of data sent is increased to let the server skip the checks and calculation of that data.

ship building is now in 3d space

added scaleable blocks

new inputs for movement system (added key to toggle ship stabilization, implemented 2 movement control schemes: using keyboard for steering, using mouse for steering) right now inputs are hardcoded and no visual feedback is provided to the player

minor changes

Version 0.33.2017-08-09 (experimental-6)

4x times reduced amount of data sent to sync rotations (32 bits instead of 128), but when building no compression is used and all 128 bits of data is sent, to keep maximum precision when positioning blocks in ship

fixed ship energy settings sync regression caused by network backend update (now energy settings sync no longer uses old workarounds to sync variables from client to server via player object, so no additional data is sent at each and every parameter change, greatly reducing network traffic for this specific case)

turrets no longer sync their target position (this way each turret only sends 8 to 40 bits of data when turret behavior changed by player or turret target changes, instead of (8 to 40)+96 bits of data each time target changes position, avg traffic reduction for this specific case ~30x-100x times)

fixed turret incorrect sync regression

fixed projectile hit explosion particles and sound position sync

fixed ship save/load regression caused by network backend update

when saving a ship, ship design data will only be sent to player which requested it, instead of everyone

Engine particles state is now calculated on server regardless of authority and synced to all clients. Client with authority ignores this state and uses his own, as more up-to-date. This way client with authority no longer needs to send his state to the server.

minor changes

Thats very true.  If 0,2% of the players who downloaded my game(right now it's shitty) donated me 1 dollar,  i would already have ... 1 dollar. hahaha! it's 0 btw.

Version 0.33.2017-07-29 (still experimental, 5)

changed sector save file format, new and old sector saves are no longer compatible

changed movement sync, it now uses global position instead of local sector position to sync position, this way it is independent from sector and sector position sync, and allows to keep position precise when objects are far from sector origin (it’s not the world origin, it’s different)

doubled amount of data sent to sync positions due to global position sync (192 bits instead of 96)

position and rotation no longer sent on spawn for all objects

sector coordinates only synced for sector objects now

fixed default collision state for client ships on server

authority assigned to player (not to his objects) can not change anymore until player reconnects now

fixed health bars being too long if health>max health

minor changes

(1 edit)

Version 0.33.2017-07-24 (still experimental, 4)

fixed teleportation between sectors

skyboxes are now generated for each sector and saved on sector save

fixed movement sync for clients without authority

velocity and angular velocity are not being sent when movement sync occurs, in case they are not changed

player position no longer synced and only calculated locally

minor changes

Version 0.33.2017-06-30 (still experimental, 3)

updated network backend

collision detection is now done on clients with authority over colliding object (This way it can be used in cases, in which server can not detect collisions properly. As disadvantage it provides less accurate results in the case when collision happens between objects with different authority.)

projectile hit detection now performed only for objects with corresponding client authority. (same advantages/disadvantages as above, plus significantly reduced server CPU load)

precalculated turret dead angles (reduced cpu load on server when shooting, uses some cpu time when building a ship)

particulary fixed block block creation

improved block destruction and removal, it now uses less traffic to sync results, and less time to calculate separated ship parts in total, but a bit more in one frame.

reduced network traffic for objects spawn in general, only data that is changed on spawn will be sent now instead of all networked variables, only 16 bits of data is used instead of 128 bits networkhash as a unique asset id now to spawn objects. (avg traffic reduction ~2x-3x for this specific case)

reduced network traffic for variables sync for objects with multiple QoS channels, only data that has to be sent on specific channel is sent, instead of duplicate data being sent on every QoS channel (avg traffic reduction ~1,5x-5x for this specific case)

minor fixes

How it's made

Version 0.32.2017-05-31(completely experimental)

fixed external ip detection

external ip detection is now performed in separate thread

broken object creation (completely) as result of major networking rework, see more in announcement (soon)

Version 0.31.2017-04-25(experimental 2)

much more reliable client authority calculation on server-side

improved movement sync algorithm (better floating world origin handling, less traffic, more precision)

fixed movement controls of ships on clients

much more responsive controls on clients

improved energy settings calculation, fixed table values and sliders

energy parameters are now calculated on both server and client sides, client only performs simplified calculation for his authority objects

client now calculates ship movement for his authority objects

minor fixes

Version 0.31.2017-04-19 (experimental)

implemented floating world origin (practically unlimited world size)

server no longer has authority over client movement and collision detection (victimized to above)

broken movement controls of ships on clients as result of local authority over movement (because engines is server-side logic now)

changed network sync algorithm (now uses twice as much network traffic)

minor changes in sector saving algorithm

sector savedata is now ignored when world loads, instead only one asteroid is spawned.

autosave will save that, breaking any proper sector data

possibly broken external ip detection and connection over internet.

updated ship size calculation and fixed ship size calculation bug on clients that caused error messages spam in logs

fixed ship status shaking

realigned main camera with calculated ship center by default

ship center is now shown by green capsule

more bugs?

(1 edit)

It's middle mouse button by default. Probably it's confusing, that middle mouse button is called mouse2 in settings menu, but this is just how it's called internally.

Version 0.30.2017-03-08

fixed bug that prevented some block connection calculations on server

fixed ship not being controllable after applied new ship design for remote clients

reduced network traffic at block creation

fixed bug with ship size calculation at game start

fixed bug when ship design was saved by everyone when one of the players saved it

world saving no longer triggered on clients

minor fixes

(1 edit)

Version 0.30.2017-03-07

fixed empty block connections data when saving ship design on remote clients (saving ship design now syncs ship design with server)

fixed log file warnings when draw ship design preview buttons on clients (removed some lags)

fixed ship not being controllable after applied new ship design for host/server

minor fixes

Version 0.30.2017-03-06

default player ship consists of multiple blocks now instead of one

fixed beam and mining cannons not being loadable from file

selected ships have square frame attached instead of capsules in the middle

minor fixes

Version 0.30.2017-03-05

fixed inventory

simplified inventory (containers no longer have their own inventory that had to be synced saved and loaded on per-container basis, instead only ships have their inventory now, without possibility to access each container's inventory and choose where to store what, it was a nonsense anyway)

inventory UI only updated when inventory changes now

improved UI

minor fixes

Version 0.29.2017-03-01

fixed and reworked beam cannons, improved beam cannons performance and reduced network traffic consumption by beam cannons by ~2 times as result of merged cannon design

fixed cannons not shooting if they are rotated by more then 30 degrees

removed lag when drawing many ship design preview images

added graphics for block and inventory buttons

updated blocks description and tool-tips

game settings no longer reapplied each time scene changes

new world and ship designs will be given default names if they are empty

world and ship design selection menus UI is now consistent, overall UI is still a mess

broken inventory

Version 0.29.2017-02-21

ship designs can be spawned and applied over network now.

fixed error on loading ship designs, those have turret or cannon type blocks

changed internal ship design file format, previous is not supported any longer (future versions of the game will have compatibility with it)

changed internal world file format, previous is not supported any longer (compatibility with this world format most likely will be broken few more times)

turrets and cannons are no longer separate objects (that was way too unclear for new players how does this work (e.g. place this turret mount there, place turret on it at specific angle, and finally place gun in there), worse performance-wise and harder to develop)

reduced network traffic on block spawn

improved block spawn method (not the same as above or below)

reworked internal ship design (blocks relationships), adding, removing and destruction of blocks should be faster now, idea of sockets on blocks is obsolete, there will be new one.

turrets can no longer be built too close to each other

broken beam cannons

Version 0.29.2017-02-15

you can have multiple save files now

fixed save path bug

changed save path on Linux

fixed missing quality presets bug

removed save and load buttons from game scene

game now has autosave feature

ship design can be saved and loaded now (but not yet applied, there is some work with the network to do, to make it possible, I will make it in the next update in about a week)

each loaded ship design has a preview now

Version 0.28.2017-01-22

removed interface glitch in the game scene

removed input keycode debug info

Version 0.28.2017-01-21

reworked network manager

removed lag on world generation on the server completely, reduced lag on client connect

added loading screen

on clients scene loading happens behind a loading screen, on the server both scene loading and world generation happens behind a loading screen.

If you have something to say, better post it here, for now

Version 0.27.2016-12-30

fixed bug with game settings path on Linux

asteroid generation now takes almost 2 times less time, meaning less lag at the beginning

asteroids are now invulnerable during world generation

multiple asteroid parameters no longer sent during world generation

world can now be saved and loaded (just asteroids without minerals data yet)

(1 edit)

Version 0.26.2016-11-27

fixed bug with controls options do not spawn if there is no game settings file exists, basically every 1st launch was unplayable due to this.

asteroids have collision sounds now

asteroids receive collision damage now

projectiles do hit asteroids too now

Version 0.26.2016-11-25

added in-game help panel and option to disable it

asteroids are now stylistically the same as ships

fixed asteroid spawn error on clients (caused multiplayer to be unplayable)

added more asteroid models

Version 0.26.2016-11-20

fixed clicking on another button while waiting for current button input in controls menu

fixed bug with controls always stay default

added option to disallow to assign multiple actions for a single button

reworked main menu

game now remembers last server port and address

added button for external ip detection when starting a host (will not work if my site is down)

fixed error on rejoin/rehost a game after manual disconnection