"The Debt" - Space sandbox turn based RPG
Hello, it's zero budget project which I'm making alone, inspired by "Space Rangers 2" and partially "Freelancer" and even a little "Fallout" games.
It's not ready yet, but most features are working as intended and there're no known bugs, just some incomplete stuff and almost zero content in terms of quests.
It's an RPG game, where you start as a freelancer, who owes a lot of money to randomly chosen faction. Your main goal is to either pay all the money or to ensure that this faction is destroyed.
My main goal was to make a true sandbox game with "real" economy and stupid random spawns. In my game every ship you see was built on a certain planet for resources. All planets produce/consume resources and nothing is randomly generated for no reason. If you see a freighter carrying food to a planet, then this planet doesn't produce food and AI sent a freighter to replenish its food supply. If you rob/destroy the ship, then that planet really won't get the food and thus population will starve and may die, while population itself is planet's multiplier for it's outputs. It means, that by robbing/destroying civilian ships you pratically weakening someone's economy and thus make this faction weaker, because military ships require resources to be built and if faction has no military ships, then it's screwed because of pirates and other factions.
Diplomacy between factions work the same way (no stupid RNG), everytime factions trade (freighter of faction A successfully brings any resource to a planet of faction B) or when diplomat ship reaches his destination, then relationships between those factions grow. If, however, a ship of faction A is destroyed in the system, which is controlled by faction B, then relationships suffer, and if it was a diplomat - then it's even worse. When relationships drop to -50 - war begins and factions start to invade each others system and fight (if they have military fleet at first place). In theory player can easily manipulate factions by destroying ships of one faction inside systems of another factions, especially targeting diplomats. Robbing ships (demanding money or cargo) also lowers relationships, if the ship was robbed in the system of another faction.
Ship equipment: there's weapons (for shooting, obviously), drives (+speed), reactors (warp range), armor (-damage to structure), shields (-damage to shields), repair units (shield and structure regen), AIs (+accuracy), scanners (+field of view), hulls (your ship itself) sold by planets and require resources to produce them. So poor planets will have less selection.
You can also buy ship hulls for your main character or hire another pilots and control more than one ship. You can control up to 6 characters at a time. If your main character dies - it's game over, other characters may die and you can continue playing. Your party must travel together between star systems, it means you must warp with all of them together, so the party's warp range is limited by reactor with least charges inside. Also all ships must be outside system border in order to warp out and none of them must be in combat (no deal and no receive damage for 3 turns in a row, taking 0 damage doesn't enforce combat).
Character skills:
Accuracy - simply added to total ship's accuracy. (formula will be below)
Mobility - added to mobility.
Engineering - decreases chance to lose durability on item. Weaponry lose durability when used, AI - when use beam (not torpedos) weaponry, scanner - any weaponry, drive/reactor - when moving, armor/shield - when taking damage to structure/shields, repair unit - when regenerating something.
Commerce - better prices.
Sociology - spend less charisma points of social actions.
(in game when you hover over a skill, you'll get more info with numbers)
About accuracy and mobility - it's simple accuracy/mobility (divide). If it's 1 or higher, then you deal full damage, else partial, if accuracy was 0 or negative, then 0 damage. Accuracy is your skill + ship's AI + weapon's innate accuracy and then minus range penalty. While mobility is skill + half of ship's speed, but that number can't be less than 10, so static objects like planets and star bases have 10 mobility.
Character's background and perks - not implemented. However you'll still get perk choice every 3rd level, you can pick it and see it in character's sheet, but perks are fakes and do nothing, it's just the "taking a perk" mechanic is implemented.
Quests - there's only two quests, lol. One is your typical "errand" quest, except that every ship, when "born" on a planet, has a chance to be "evil", when you have that quest, where you need to bring a container to a certain planet, when such ship sees you - he'll try to rob you by asking you to give him that container. Even police ships and military ships can be "evil". Second quest can be rather hard - you need to ensure that certain planet will starve for 25 turns in a row, the game will never choose a planet with positive and 0 food growth, only negatives. It's hard, because sometimes AI can send many food freighters to a planet and even when you arrive, the planet will have so much food, that it may take ages until they eat it all, unless you're super rich and can buy it all.
Resource prices - when planet has too much of certain resource - the price will drop, if it's below certain treshold - price will grow. If planet wants to use certain resource, but doesn't have it, then the price will grow again.
There's 7 resources:
Tier1: Food - consumed by population, if there's no food, population may die, but it'll never drop below 1 (for now).
Tier1: Minerals - every planet produces them, but poorer planets produce low amount. Minerals are main resource, which is used to produce every other resource, except for food.
Tier2: Medical supplies - each turn each planet in every system has a chance to be struck by plague/sickness, if the planet has meds, population will consume it, else pop will die. Only planets with positive food growth can produce it.
Tier2: Microchips - used for building ships, equipment(not weapons), star bases.
Tier3: Alcohol - helps with pop growth, no alco - slower growth.
Tier3: Weaponry - used for building ships (with microchips), weapon-equipment, star bases (too).
Tier4: Drugs - used by pop, when the planet wants to use a resource for something, but doesn't have it (starving planets, no alco, no med, wants to build something and has no minerals or microchips or weaponry). Drugs only produced on the planets with very high food growth (Jungles, Forests).
Prices:
Tier1: 4-16
Tier2: 8-32
Tier3: 16-64
Tier4: 32-128
Prices for these resources can't drop below and grow beyond those borders.
There's no such thing as "pirates", instead there're freelancers, just like you, who has a chance to be born with "criminal gene", such freelancers can become pirates anytime they see an opportunity.
If you become a criminal by attacking/robbing innocents and being observed by miltary ship, or directly attacked the planet / star base, then you'll be marked as criminal in that star system for certain amount of turns. Those turns will be frozen until you leave the system, so you need to warp out for criminal status to go away.
You can freely attack other criminals with no consequences (except that they may aggro on you). When you hover over a ship, you'll see red "(Criminal)" near their role in info box.
Interfactional wars:
They're implemented, but player can't directly take part in wars right now, if the battle for the system starts in the system you're currently in, you'll see 2 fleets flying to ~center of star system and fighting each other, if invading faction wins - then the system changes ownership and attacks next system. If defender wins - defender counterattacks. Invaders lose if all their ships in the system are dead of fled. Defenders lose if they have no police ships, no military ships and no star bases in their system.
Criminal attacks:
Sometimes independent freelancers may attack certain systems and may kill all poor police ships. Then, if the faction, who controls the system, has military ships, will send a fleet to that system to deal with pirates. If you're a criminal in the system with no police ships, then the same thing will trigger, as the game registers you as a "pirate faction" when you're criminal.
Simulation and off-screen battles:
Although you can be only in one star system at a time, it doesn't mean the world is spinning around you. Freighters, shuttles, diplomats, scientists, pirates activities are registered and simulated every turn. When AI sends a freighter with resource to a certain planet, the game calculates how much turns it'll need to leave the system, the warp to the system and to fly to the planet. If you warp in the system, where that ship was "born", and, for example, he was born 4 turns ago and he needed 9 turns to reach system border to warp out, then you'll see that ship at 4/9 path between the planet he was built on and the the border of the system. If there's pirates in the system or interfaction wars happens somewhere, then there's random rolls every turn happening to check if one of the sides lost someone. If you warp in in the middle of the battle, you'll see them somewhere between center of the map and borders around the system fighting each other. While pirates will be "spawned" near random civial ships and will attack them for real. Also if there're pirates in the system, then civilian ships, who transit through it, also make rolls to survive or be destroyed, the more police/military ships there and the less pirates - the less chance to be destroyed.
Screens there:
https://vk.com/album409678018_257788858
Download link of archived game (VK.com, you don't need to be registered, I think, I made it completely public):
https://vk.com/trollylolly?w=wall409678018_4
In case you can't download there, here's download link on some free uploading website, I think it'll be avaiable for 30 days or something:
I can't upload here, because of limit 20 MB (archived game size is ~39 MB, unzipped ~119 MB).
Almost forgot, the reason I made the post - I just need feedback and may be suggestions. Also I know that numeric value aren't perfect and needs balancing, would be nice to see help there too. Also there're "Sources" button in the main menu for sources, if you need something and you can't see it there, tell me and I'll either add it or give a link here (it'll be public domain most likely, or made by me, since some stuff in this game was made with 3ds max and photoshop by me).
There shouldn't be any critical bugs (except that you can't win the game lol, even if you collect the money, because there's simply no win screen), because I test everything like over9000 times, but if you see something, would be nice to let me know. This includes even small details, like idiotic AI behavior or something is not updated properly in interface or cursor isn't updated when hovers something and some other window is closed or opened, etc.
Oh, the game will be in 1024x768 resolution by default, just go to options and choose whatever you want.
And controls:
Right mouse button - to give order to fly somewhere. Left mouse button - select ship (if you have more than 1) on your ships, talk on other ships. Loot on loot. To land on a planet, just hover it and right mouse button, your ship will automatically correct it's path each turn (because planets also move). If you want to fly OVER planet (you hover planet with cursor, but don't want to land, only to fly to that point), then hold Ctrl button and right click.
Space to skip turn, when you skip turn, all ships will move simultaneously. If you hold space button, then turns will be skipped non-stop.
To warp out from the system, just fly beyong system border, then open the map and click on the system you want to warp in, if you have enough charges in the reactor and not in combat - you'll instantly teleport there (although some turns will pass).
To shoot someone, either press 1-5 to select certain turret or ~ to select them all, you'll see their ranges, then just click on your target, you'll see "crosshair" icon in the left bottom corner of turret icon, it means this turret is aiming at someone. Then just skip turn, if the target will be in the range of your turret(s), those turrets will shoot.
There will be notifications on the right side of the screen, like pirates are killing police ships, Faction A declared war to someone, etc. etc. You can either just ignore them, they will disappear in 3 turns, or right click them to remove.
Edit:Forgot to mention about charisma points, you receive them with XP, spend on persuasions, your sociology skill decreases price in charisma points.When you want to threaten a ship to drop cargo or give you money, the price in charisma points may look too high, it's because the chance is 100% and depends on distance between you and the victim and its shields/structure values. If you first shoot the ship and make it less healthy and you're very close, then you won't need to spend much charisma to force him to give money/cargo.
If it's really a free or an open-source project then put the sources in github or gitlab, share the repository name and share instructions how to download and compile it. Will be able to give feedback after the same.
Its sounding really good, just one point i dont think good, your companions should share the main ship jump limit, or else it will turn annoying and limit their specialization potential, i for one would not get them for the hassle of having to upgrade them all each time a new engine comes up.
On a side note, ship looks so small on your pics, are they 2d or 3d?
Sounds quite interesting game. There was only Windows binary so I cannot try it out. One thing I noticed from screenshots that does factions have names or are they just named after colors? I think if faction would have name like "Freelancers from Sul" it would sound cooler than just "Red".
Since I couldn't play it I assume that this is somewhat turn based but is flying real time? Does player need to control all his ship or do they have somekind of AI? If they have, have you thought about giving commands to other ships in your fleet than direct control?
shirish, no, unfortunately I won't be able to make it open-source, because the code is human-unreadable, since I was doing the game alone for ~5 monthes and I knew that no one will join me, "converting" it to human-readable code will take ages, there're ~24k lines on one script, ~4.5k lines in ship script alone. The project is rather huge and most of its features aren't even mentioned in the first post. Making it open-soirce may only enrage people, who will look into code and will be like "WTF am I reading?".
Danimal, companions give so much advantage in firepower, that upgrading their equipment will always worth it.
Ships are 3D, I downloaded almost all free ship models from Unity Asset Store and then changed their textures to match faction colors, so each ship has 9 possible textures: neutral + 8 faction colors. They're so small, because the camera is zoomed out, you can zoom in so much, that ship will be almost on all your screen. When zoomed out on max, ships become partiall 2D and change their color in faction color completely, so it's easity for a player to see them. Also they're easier to click when zoomed out max, by increasing the area, where cursor is considered to be over a ship. They same with torpedos, they also become 2D on max zoom out.
Reemax, yes factions are simply named after their colors, at first it was like a placeholder, then I decided to leave it as it is. I don't like senseless stuff, my game isn't based on existing universe, so the game has no history, which means no matter what names are give - they will be senseless and just random words. So I decided to simply call them by their colors.
The game is 100% turn based, you give an order to your ship(s), then press space button and 1 turn passes, during that turn, which lasts 2 seconds, all ships in that system fly to their destination, moreover the turn has 5 phases, that happen each ~0.3 seconds, during 1st phase every ship fires 1st turret, if it's aimed at something in range, 2 - 2nd turret, etc.
Companions have no AI, they're like your character, you select them and point where to fly.
To tell short: this is 4X strategy game for AI, where you, player, play RPG in their world. When you start a new game, the galaxy is randomly generated and all factions start with just 1 system, then expansion simulation happens until there're no neutral systems left, then don't remember how many turns pass as simulation again and then you start the game. The game is super boring and mostly created for AI to play... poor human player has almost nothing to do in this game, that's why this project is half-dead, even if it's almost completed, because no one is interested in it, even I. So I think it can be considered abandoned. Opengameart forum is actually the only place where someone said something about this project, I was even surprised. On Unity forums and social networks is was 100% ignored. Even my friends don't want to try it ^_^
For me game idea sounds very interesting. It reminds a bit like Elite. I think I have started similar game in late 90s but it never got finished.
My current project is open source and in the start it did not have CI system at all. Then I got help from one guy who made the CI base stuff and added checkstyle checks. These checkstyle checks could not be run in CI since it got so many warnings. It took me and him to fix all the warning month or two. But ever since that checkstyles are being run and build fails if code is not in correct style. So converting "non-human" code to human is not going take 5 months, I am quite sure.
You can always invent history for factions. Faction names could be also fixed so they do not need to be random words. Also if you save all the faction history while game is being played, then you will get history for factions.
But sounds like human player needs more things to do. More mission type obviosly. Have thought about just exploring the galaxy, I personal find that quite interesting for example in Ur-Quan Master.
This reminds me a bit of Spaz2,would the player be able to start his own faction even if its just in name and conquer everything?
You should also go to free game dev forum and leave a post there, im sure many will try it out.