i wiped the player list and nations list so come sign up pls and support me!!!
its open source code lol
https://github.com/puppyprogrammer/EmpiresEdge
my app is now in a state where you guys can make an account, create a nation, and begin accumulating resources........... there is nothing to spend the resources on yet, but there is a ranked list of players based on who has the most resources so you can begin to accumulate them and i wont delete them from you... so consider this your head start in this game lol
https://empires-edge.vercel.app/
If it ever ends up on app store remind me later
If you really want the thing to sell, it has to include an option to take slave girls with big boobies. You have to create your digital war to appeal to the 0rc (Ruzzian invader) drives in your audience. Points for trophies that are taken after gross acts of torture, etc.
Yesterday I went from a simple concept for some menus to a decent looking menu that should be usable on Android and Steam. I worked pretty much every waking moment yesterday, and made it to 95 contributions on Github. I think I will hit over 100 today since the day still has a couple hours left.
Here is what my draft looked like that I made in MS paint. (See below).
Today, I need to make a couple more improvements to the menus, but my real mental power is going into thinking about how nations will expand their borders.
To that end, I think I'd like the borders to expand naturally, instead of players just spending money to grow... because the idea for the game is that players can play for a couple minutes per session to tend to their nation and its alliances, while the nation grows and develops on its own over a span of months and even years within a multiplayer world that focuses on survival over domination.
So with that in mind, I think my next step is to add some roads to this game.
The nice thing about roads from a design perspective is that they are easy visually to add, and I think they will fit right into this tile-based world with minimal computing power requirements.
So I'm thinking I can come up with an SVG asset such as teh black roads with yellow lines seen in the top right of the above image....... or I could just literally draw some lines on the tiles and call it a day... I could color the roads to match the color of the nation, or just keep them grey.
I think grey is a good simple option for a minimum viable product.
So.... the game play loop (so far) would consist of the player logging in, creating a nation, accumulating resources, using the resources to upgrade their owned tiles with roads, and thus gaining a CHANCE that the neighboring tiles might be claimed.
The one problem I see with this is that players will just spam roads on all their tiles. I think to combat that, we can simply add a rule to the algorythm that checks if a player claims a tile to only look for at least 1 road owned by the user's nation within at least 4 tiles, AND that the user's nation own at least 1 tile next to the tile being considered.
So in that way, there is no incentive to spam roads on every single tile....
The next question I ask myself is... how do we encourage users to build roads that are continuous rather than just spam road chunks that don't connect?
I think to answer that, we need to consider how roads can be used more deeply with other systems. For example, if we want to deploy some units far from the capital, what if the game considered tiles with roads to essentially cost 0 movement? This if a player wants to send a "tank" 10 tiles away, it might cost 10 oil, but using a road could mean 0 fuel to get that same 10 tiles.
This could also play a role if we decide to add logistics in the future... Say a truck needs to move 10 oil from the capital to a factory 10 tiles away..... since roads exist, it might cost 0 oil, but if no roads existed, it may cost the user 20 oil.
In this way the user would choose strategicly to develop his national factories along key roads.
So I guess my goal for today's development is to simply make it possible for a user to build a road on a tile that they own, and for the road's direction to automatically "snap" to connect with neighboring tiles that also have roads.
So, the first step then, would be to program the bottom menu to show a tile's stats when clicked, and to offer building options.
So a player clicks on a tile, and if they own it, then they get building options.
They select 1 building per tile, and once a building is selected, their only other building option is to demolish it.
For now, we will make roads free.... I can think about costs later.
Create central trade so each nation can trade with one another.
Central trade means you can list resources at competitive prices.
If the player doesn't open up to the market, they'll be stuck with fixed prices while the players who are open to do business are able to slash prices and ultimately make more money.
The incentive is to create more small businesses for one's nation/economy as it's more prosperious and begins to add up. The open market is what makes it possible for more small businesses to be created, lest it would've been more expensive to do due to higher fixed prices which take more time to fill out.
.
Do you know why the USD is more saught after than currencies worth more than it ?
It's because the US consumes so much the USD is more available to overseas businesses than the Pound or Euro. The USD keeps coming.
It's the currency of richness because of the US economic consumption of goods. The USA is the world's largest consumer, so the USD is quite valuable that way. Even the enemies of the US accept USD.
Being the nation that consumes the most in your simulation will NOT mean being the most powerful. Scrap fiat and debt and interest
The model should have 1 currency. Gold.
How much gold a nation has, will do with mining it, and the discovery of new mines should be unlocked with some progress. Not population but how much business is being done in one's nation.
Increasing taxes will slow down government income. As higher taxes gives the masses incentive to save up and do less things. Lower taxes will grant a more bustling economy with more spending.
Give the economy holidays. It'll rejuvenate the economy and buff the productivity of ones economy for a few days. By the end of the buff progress should be ahead 3 days if there were no time off.
Holiday buffs should weaken with each use and put an economy behind if abused. A buff shorter than 47 hours wouldn't benefit be should be ignored since 24 hours minimal is required for a buff to take effect.
Military.
Cost a lot of money to build and execute. Other players will know when a nations military is being deployed.
A military ceasing another nation will be alarming, and other nations can drop money on military spending and deploy in the same amount of time it takes to cease land.
The neighboring nations can opt to work as alliances to eliminate a threat which is more cost effective. With this a player should think twice before putting hands on someone else's resources.
There should be a feed where the players can communicate. An alliance can be formed with multiple players leaving outsiders wondering who's about to be attacked giving them little time to figure out what to do when the rouge alliance starts mopping up.
The possibility of war should be intermittent. A week or a month. It could be several months or weeks before a war ever breaks out.
Being in an alliance should also limit one's power, where every action by an alliance relys on a democratic consensus. An alliance of 3 will need propose actions such as attack Canadad, and 3 yeses to execute the attack. This could be cumbersome and annoying and expensive only to split land and gain a fraction more.
Create central trade so each nation can trade with one another.
Central trade means you can list resources at competitive prices.
If the player doesn't open up to the market, they'll be stuck with fixed prices while the players who are open to do business are able to slash prices and ultimately make more money.
The incentive is to create more small businesses for one's nation/economy as it's more prosperious and begins to add up. The open market is what makes it possible for more small businesses to be created, lest it would've been more expensive to do due to higher fixed prices which take more time to fill out.
yes i agree that we need trade early on in the games development... like if we assume the game is complete at 10.0, then tahts like 3.0
.
Do you know why the USD is more saught after than currencies worth more than it ?
It's because the US consumes so much the USD is more available to overseas businesses than the Pound or Euro. The USD keeps coming.
It's the currency of richness because of the US economic consumption of goods. The USA is the world's largest consumer, so the USD is quite valuable that way. Even the enemies of the US accept USD.
My end goal for this game, or a future iteration is a full on economic sim with finance, interest rates, etc, but thats literally like version 9.0 +
Cost a lot of money to build and execute. Other players will know when a nations military is being deployed.
I agree with this. I'm thinking something like units are produced in teh capital, and deployed out.. roads make deployment faster. tanks consume significant oil resources while they are in use and are not directed by the player, but instead auto-attacks the target designated by the player
the real thing i need to put more time into thinking about for a scenario like this is just how long it takes.... becsaue you want players to be able to play in real time if they want, but also you want them to be able to just play for 2 minutes at a time while on the toilet 3x a day
A military ceasing another nation will be alarming, and other nations can drop money on military spending and deploy in the same amount of time it takes to cease land.
The neighboring nations can opt to work as alliances to eliminate a threat which is more cost effective. With this a player should think twice before putting hands on someone else's resources.
yes, i am thinking each player can have a total of 2 allies. these allies can send units to eachother's country to help defend them even if the ally being attacked is offline. in this way, your ally can actually save you... and it should be difficult enough to destroy a well built-up enemy that even if left entirely undefended, it should take about 15 hours to destroy the player.... if an ally is defending you with just token resistance perhaps 30 hours, and if an ally is really being loyal and trying, maybe 3 days... and if the player themself is online, built up with resources, then it should literally just be a battle of will until someone runs out of resources or loses the will to continue fighting which could be months
There should be a feed where the players can communicate. An alliance can be formed with multiple players leaving outsiders wondering who's about to be attacked giving them little time to figure out what to do when the rouge alliance starts mopping up.
yes, there wil be a messaging system and a forum which you can see in the menus in the screenshots. players will be able to privately message eachother, and to post forum posts to their alliance and the world as a whole. players will have reputations and be known and that reputation will play a huge impact of how they are treated within the server. jerks will have to work extra hard to survive, while the well liked player might be able to coast by just putting 2 min a day in and letting their allies defend them
The possibility of war should be intermittent. A week or a month. It could be several months or weeks before a war ever breaks out.
Being in an alliance should also limit one's power, where every action by an alliance relys on a democratic consensus. An alliance of 3 will need propose actions such as attack Canadad, and 3 yeses to execute the attack. This could be cumbersome and annoying and expensive only to split land and gain a fraction more.
my idea is that there might be times in the game where a strong alliance is able to maintain a hegemony over the server for months or even years at a time. they wont be able to murder everyone, but they will have a lot of influence, and be able to make life very hard for the other players..... during times when the little players rise up though and over throw this super power... thats when the game will be amazingly fun for all those noobs rising up. thats when a new super power forums, and thats really the meaning behind the whole game
So yesterday my hope was to get the bottom menu to work such that clicking Road will add a road to an owned non-capital tile that has no other buildings already on it.
I got the logic to work pretty well when clicking a tile, to determine if the user should see a build or delete building menu, but what really took up all my time yesterday and continues even now is a bug where the updating of the bottom "building" UI is way too slow, taking 3-30 seconds to update instead of instantly.
The bug is related to my lack of experience using supabase's postgresql database and its built-in real time subscription system.
The bug is also related to the fact that I am letting Grok AI write most of my code, and I have not been keeping as keen an eye on how it's been handling this real time system, and now the chickens are coming home to roost.
I gave Grok about 20 chances to correct it's own code, but eventually had to roll back all those commits when the code became increasingly complex with no positive performance results to show for it.
Due to my system spamming the database hundredes of times per minute, I've also gone over my free tier data bandwidth limits with supabase, and though they have not shut down access to their server yet, I suspect I'm going to go ahead and pay $30 to increase the limit from 5gb to 250gb.
Even then, though, I think the lesson here is that I can't just let Grok run wild when it comes to putting in these data calls to the server.My plan today will be to study and comment the aprox 800 lines of code in app.jsx, and 350 lines of code in the TileInformationPage.jsx to wrap my head around exactly what Grok is doing with this real time system, and exactly how it is this client is communicating with the database, both on the initialization call, and subsequent subscription updates.
I'm suspecting I will find some big flaws and redundancy in Grok 3's design, and that I will be able to either re-write it myself to work efficiently, or point out the mistakes to Grok. Once I am able to click build, to build something, and then delete to delete it in under a half second, I will be ready to move on with rendering the roads/factories/mine.
So today is a study and refactor day, and paying $30 for more bandwidth on supabase.
https://github.com/puppyprogrammer/EmpiresEdge
https://empires-edge.vercel.app/