Commit graph

613 commits

Author SHA1 Message Date
Yair Morgenstern
4b0aca4ef0 Added diplomatic introductions to trade 2018-09-17 19:54:16 +03:00
Yair Morgenstern
a73ba90c38 AI doesn't declare war so quickly anymore 2018-09-17 18:34:51 +03:00
Yair Morgenstern
4bc598dcd4 Added automated exploration for scout units 2018-09-17 08:10:51 +03:00
Yair Morgenstern
a1f824842d AI units now go out and explore unseen areas 2018-09-16 23:14:35 +03:00
Yair Morgenstern
c1e6c8e894 Added "Sleep" action for units that can't fortify
Added tutorial after constructing the apollo program
2018-09-16 13:58:35 +03:00
Yair Morgenstern
9c8e173f4e Lots off background work for future water tiles
Resized xxxhdpi icon
2018-09-11 23:07:12 +03:00
Yair Morgenstern
d7a08cfc01 Eiffel tower special now no longer overrides happiness from other policies
Minimum distance between cities increased
2018-09-09 13:29:30 +03:00
Yair Morgenstern
c4838f5fde Added icon toggles to the world screen 2018-09-05 17:51:24 +03:00
Yair Morgenstern
68b64ca66f Added Honor and Autocracy policies 2018-09-05 17:17:30 +03:00
Yair Morgenstern
e71d40140a Wonder unique abilities now properly displayed in tech screen again 2018-09-02 08:43:48 +03:00
Yair Morgenstern
c97c20c94f Diplommacy screen and overview trade tab now contain colors of the trading civs
Overview trade tab is now scrollable
2018-08-31 15:01:42 +03:00
Yair Morgenstern
03029e8b99 Replaced all policy icons! 2018-08-31 11:40:25 +03:00
Yair Morgenstern
056a428376 Added secondary colors for civs - applies to units, cities, minimap, and more! 2018-08-30 23:54:33 +03:00
Yair Morgenstern
3e1fe03205 Civ list in new game screen is only scrollable up-down 2018-08-30 22:17:42 +03:00
Yair Morgenstern
2605ce6b71 Once a unit has gained more than 30 XP it won't gain XP from barbarians
AI units now always unfortify/unsetup after moving
2018-08-30 22:13:07 +03:00
Yair Morgenstern
1227a47ea2 Added nations of Russia, Rome and Arabia! 2018-08-30 18:07:04 +03:00
Yair Morgenstern
525a26e972 Next time the culture wants to go negative...we'll be ready. 2018-08-29 17:58:38 +03:00
Yair Morgenstern
5df19a9fb2 Tiles no longer change hands between civilizations (I was probably thinking of Civ IV because I tthough that was how the game worked =| )
"Mandate of heaven" no longer decreases your culture when your empire is unhappy
2018-08-29 17:50:29 +03:00
Yair Morgenstern
17e440d557 Added building icons!
There are now images of the current construction in the construction picker screen, the city screen and the world map!
2018-08-29 14:03:18 +03:00
Yair Morgenstern
bd4e358bd8 Added ALL Building icons!!!
We will no longer get errors when adopting a policy that puts things near our capital if we don't have a capital (why would you do this? I dunno but people have!)
2018-08-29 12:36:58 +03:00
Yair Morgenstern
9e5208dd8c Fixed a bug where the unit needs the civInfo in order to calculate the moveTo even before it's put on the map. 2018-08-29 12:25:35 +03:00
Yair Morgenstern
40db822a79 Finished off promotions, adding Formation I, Formation II, Blitz, Logistics, Mobility, and Volley promotions 2018-08-28 12:12:14 +03:00
Yair Morgenstern
6e2eaa20a8 Added health bar to injured units! 2018-08-28 11:11:35 +03:00
Yair Morgenstern
b983de9599 Stat icon organization 2018-08-28 10:52:48 +03:00
Yair Morgenstern
5d4c8a618d Replaced all resource and improvement icons!
AI disables city raze on capture/buying cities
2018-08-28 10:35:56 +03:00
Yair Morgenstern
5d3c7a3a5e Replaced city connection icon, luxury resources now have a smiley next to them and strategic resources have a production symbol 2018-08-27 17:17:14 +03:00
Yair Morgenstern
4932c627aa Changed icons to the new and non-suable version! 2018-08-27 14:35:49 +03:00
Yair Morgenstern
e078590933 Fixed concurrency problems when updating city stats 2018-08-27 13:38:54 +03:00
Yair Morgenstern
c5e4a75505 Fixed bug that occured when city was being razed and managed to reach -1 population somehow 2018-08-27 12:41:16 +03:00
Yair Morgenstern
94e9098ac0 Solved a conccurrency problem in getHappiness 2018-08-27 12:32:07 +03:00
Yair Morgenstern
28f5ef5e4f Barbarians now destroy cities instead of capturing them
Destroyed cities reliquish their tiles like they're supposed to
2018-08-27 12:16:25 +03:00
Yair Morgenstern
3db82c2400 Some ridiculous people have passed the 15-city mark. Crazy. 2018-08-26 07:57:08 +03:00
Yair Morgenstern
c828b57577 TileMapHolder doesn't update using clone because it causes problems when updating the tiles 2018-08-25 23:49:12 +03:00
Yair Morgenstern
86464ccdb0 Many UI updates are now done on the clone, so we won't get concurrency exceptions 2018-08-25 23:15:40 +03:00
Yair Morgenstern
ce00fd43e0 Fixed bug where even if the unit couldn't be placed within 3 tiles it was still added to the civ's unit list 2018-08-25 23:14:20 +03:00
Yair Morgenstern
9fbb997e63 Added burial tomb unique building for Egypt 2018-08-24 15:15:52 +03:00
Yair Morgenstern
d48d7aa9fe You now choose civilizations from a list which also tells you what's unique to that civ 2018-08-24 12:28:27 +03:00
Yair Morgenstern
8978d13cdc Added paper maker as first unique building! 2018-08-23 13:16:41 +03:00
Yair Morgenstern
4fd9ac0f38 Added musketeer unique unit for France 2018-08-23 08:43:14 +03:00
Yair Morgenstern
6b5c1e62da City-to-tile ownership is more efficient
Fixed bug where when starting a new game your initial units would get an extra turn until you reloaded the game
2018-08-22 13:30:37 +03:00
Yair Morgenstern
5e1bccdc47 Organized clone functions
Found one last place where the unit was destroyed manually and not using the destroy() function =\
2018-08-20 22:36:01 +03:00
Yair Morgenstern
040866609e Added effects of Militarism, Total War and Facism 2018-08-20 21:58:01 +03:00
Yair Morgenstern
034f6b0860 Finding map tiles now works with a matrix instead of a map - works MUCH faster! 2018-08-20 09:19:37 +03:00
Yair Morgenstern
f820b75fff Json is apparently not thread safe, so we now create a new instance for each stringify 2018-08-20 09:17:40 +03:00
Yair Morgenstern
4c5e6a8a39 TileMap that was saved in memory changed to TileList, to give more freedom with how we save tiles - TileMap now generated on runtime 2018-08-18 21:48:40 +03:00
Yair Morgenstern
06091d640d civ units are now cached and not calculated every time 2018-08-17 14:45:48 +03:00
Yair Morgenstern
1957c4ca80 Code reorganization - separated variables, pure functions and state-changing functions in all main logic classes 2018-08-17 13:36:23 +03:00
Yair Morgenstern
749ff90fe0 Policy screen translated 2018-08-17 11:44:20 +03:00
Yair Morgenstern
8b90571a77 Fixed some concurrency problems 2018-08-17 11:38:19 +03:00
Yair Morgenstern
fe67fda906 Performance improvement - Moved all autosaving to save a *clone* of the current game in another thread, thus allowing the user to continue his game without having to wait for the game to save 2018-08-16 23:33:56 +03:00
Yair Morgenstern
b4fece29e0 Slight performance improvements for AI 2018-08-16 09:13:34 +03:00
Yair Morgenstern
1affaa38c2 Clicking the Back button when on diplomacy screen returns you to the world screen 2018-08-16 08:53:34 +03:00
Yair Morgenstern
b1e17a67c6 Added Range, Sentry, Siege and Indirect Fire promotions
Units now get experience when capturing a city
2018-08-16 08:52:29 +03:00
Yair Morgenstern
26b3366d93 Added all policy translation lines 2018-08-14 19:24:47 +03:00
Yair Morgenstern
f9632b4151 Back button now acts like the "close" button, returning you to the upper-level screen (usually the world screen) 2018-08-14 19:09:58 +03:00
Yair Morgenstern
27b4c2c2ab AI units now fortify when healing and prefer tiles with defensive bonuses while healing 2018-08-13 09:25:29 +03:00
Yair Morgenstern
fee0b718ec Shrunk game size by 15% by including the images only when packed 2018-08-13 08:56:15 +03:00
Yair Morgenstern
bb25616b69 Fixed bug when playing with translations and constructing science, gold or nothing in a city 2018-08-12 20:45:17 +03:00
Yair Morgenstern
4c0372a8b5 When cities expand, units that aren't allowed to enter there are pushed to the closest moveable tile 2018-08-12 08:56:10 +03:00
Yair Morgenstern
847bf9650d Changed the basic stat icons to not use the original Civ's 2018-08-10 18:31:18 +03:00
Yair Morgenstern
3515b0f6bd Added instructions to deal with situations where the game has crashed but we've noticed it 2018-08-10 11:35:56 +03:00
Yair Morgenstern
c67d515ec4 Organized all game images and added TexturPacker to pack them all into a single image, with an atlas to find the texture regions -
MASSIVE boost in rendering performance!
2018-08-10 11:05:21 +03:00
Yair Morgenstern
4d27f7f769 Added icon to city tiles 2018-08-09 21:52:28 +03:00
Yair Morgenstern
4f727df216 Added crosshair image on attackable enemies 2018-08-09 21:04:25 +03:00
Yair Morgenstern
6f2b845e13 Civilization class renamd to Nation, to have it be distinct from CivilizationInfo 2018-08-09 18:44:43 +03:00
Yair Morgenstern
186feab0c6 Added notification when enemy declares war on us 2018-08-09 18:36:37 +03:00
Yair Morgenstern
e6bc3a1ab7 Added tutorials when first encountering barbarians and other civilizations 2018-08-09 18:33:47 +03:00
Yair Morgenstern
b79b682376 Added "conquer defeated city with melee unit" tutorial 2018-08-09 10:23:10 +03:00
Yair Morgenstern
97bb4e05b9 Fixed bug where you could buy the same buildings multiple times - thanks vita10g! 2018-08-09 10:10:49 +03:00
Yair Morgenstern
9b38d0c33e Cities conquered in battle lose population 2018-08-08 18:34:23 +03:00
Yair Morgenstern
376ae64e77 AI Ranged units no longer head towards defeated cities 2018-08-08 08:26:23 +03:00
Yair Morgenstern
0ac87fa8c4 AI Performance improvement (added transient currentTile to unit) 2018-08-08 08:25:19 +03:00
Yair Morgenstern
9d0035a8a6 AI now considers war on multiple civs, starting with the closest 2018-08-08 08:23:20 +03:00
Yair Morgenstern
c35f7d68f2 No longer get notifications for units of other friendly civs around your territory 2018-08-07 09:04:35 +03:00
Yair Morgenstern
3b83627386 Left side of diplomacy screen now scrolls 2018-08-07 07:39:44 +03:00
Yair Morgenstern
02fd349243 Massive AI combat improvements!
Added translations
2018-08-06 21:58:30 +03:00
Yair Morgenstern
99c0abd24d Fixed crash when you would melee attack an enemy unit that was in a friendly civ's (unenterable) territory 2018-08-06 13:08:45 +03:00
Yair Morgenstern
13e1d06c8b Fixed bug where everyone would pay upkeep costs for all tiles, instead of just their own tiles 2018-08-06 13:07:36 +03:00
Yair Morgenstern
2be6a5c15c AI construction choices now better and change between peacetime and wartime.
AIs now declare war on each other if they think they can defeat the other side
(Returned movement alg. to the way it was because the new way didn't allow ais to find enemy units, added comment)
2018-08-05 23:08:50 +03:00
Yair Morgenstern
e655d6620a Added LOADS of words to be translated - all buildings and units! 2018-08-05 16:12:46 +03:00
Yair Morgenstern
c3cdae12d4 Tutorials are now defined per language! 2018-08-04 23:57:53 +03:00
Yair Morgenstern
7983901435 Info on translation percentage in language picker screen 2018-08-04 21:50:56 +03:00
Yair Morgenstern
ec0ebc73f0 Expanded translation for new game screen and overview screen 2018-08-04 21:36:08 +03:00
Yair Morgenstern
5b26974752 AI picks a random tech from those with the lowest cost
AI civs trade luxury resources wiith each other when they have spares
2018-08-03 15:21:41 +03:00
Yair Morgenstern
f0a56b5e84 Units are moved to movable tiles when an enemy city expands its territory to the unit's tile
Diplomacy button is not shown unless you have other civs you can diplomatize with
2018-08-03 14:47:25 +03:00
Yair Morgenstern
215310b413 Diplomacy screen, declaring war, no entering frienly enemy territory 2018-08-02 21:21:30 +03:00
Yair Morgenstern
bf9e06445c All diplomacy now done from a separate screen 2018-08-02 14:59:53 +03:00
Yair Morgenstern
023c4cd1c6 Trade now almost entirely separate from Trade Screen, so the Trade screen can become a Diplomacy screen! 2018-08-01 22:41:23 +03:00
Yair Morgenstern
04c0c87d7c Trade table separated into a distict entity, allows us to put the trade into other screens 2018-08-01 13:00:06 +03:00
Yair Morgenstern
d8daf6dc88 Separated trade logic from UI display 2018-08-01 09:00:06 +03:00
Yair Morgenstern
d8bb0eb9e5 Can now trade Peace Treaty! Which leads to actual fukken peace! 2018-07-31 17:48:57 +03:00
Yair Morgenstern
fa8e8a148d Can now trade technologies!
AI assessment of luxury resources improved
2018-07-30 21:34:31 +03:00
Yair Morgenstern
82c42e8528 Trade classes re now separate files 2018-07-30 13:30:13 +03:00
Yair Morgenstern
8b259a3db3 Added ai unhappiness modifier to difficulty 2018-07-27 10:03:44 +03:00
Yair Morgenstern
1689005fef Tutorials saved between turns
No notification for "discovering" barbarians
2018-07-27 00:07:32 +03:00
Yair Morgenstern
041f904f6c Added language picker screen 2018-07-26 23:46:14 +03:00
Yair Morgenstern
f6f9433c41 Fixed concurrent iterator change problems 2018-07-26 23:17:18 +03:00
Yair Morgenstern
592b716e81 Removed the 1/63 chance that on a small map you couldn't have many civs 2018-07-26 23:16:56 +03:00
Yair Morgenstern
03f0b2a1f9 Added getBackground helper function 2018-07-26 23:15:33 +03:00
Yair Morgenstern
1cba56c947 Tutorials shown are now per-device (in the game settings) rather than per-game
Game settings are now saved as a proper class, found how to ignore unknown properties in json! =)
2018-07-26 13:15:38 +03:00
Yair Morgenstern
efef41541c Razed cities do not grow 2018-07-25 23:05:21 +03:00
Yair Morgenstern
06c68302ce Added difficulty settings! 2018-07-25 22:56:25 +03:00
Yair Morgenstern
7af1a89913 You can no longer see city connection status of enemy cities 2018-07-24 18:25:36 +03:00
Yair Morgenstern
b4614fc1f5 Railroad now looks like a railroad and visible on tundra 2018-07-24 18:22:39 +03:00
Yair Morgenstern
18a8f9f0d5 Fixed bug where units on hills thought they could attack further away units 2018-07-23 20:04:33 +03:00
Yair Morgenstern
a3eda1fd52 Fixed bug that caused barbarians to not do anything 2018-07-20 16:04:38 +03:00
Yair Morgenstern
9c23c8f551 Civs start at least 3 tiles away from edge of board 2018-07-20 15:58:03 +03:00
Yair Morgenstern
a33a161fdb Unique units can now be upgraded to (e.g. archer to longbowman) - Thanks Am-per-sand! 2018-07-20 15:57:44 +03:00
Yair Morgenstern
ea20201c1b Renamed Unit to BaseUnit so it wouldn't conflict with Kotlin's Unit cllass 2018-07-20 12:13:37 +03:00
Yair Morgenstern
0d261e88bf Added list of units to empire overview 2018-07-19 13:29:52 +03:00
Yair Morgenstern
d8ac537535 Cut down saved game size when copying text to the clipboard by 85% using gzip 2018-07-18 23:13:58 +03:00
Yair Morgenstern
a2530b5480 Player no longer always starts in the middle of the map 2018-07-18 18:45:37 +03:00
Yair Morgenstern
606a375467 World screen centers on capital instead of zero position 2018-07-18 18:41:15 +03:00
Yair Morgenstern
e6a95452b4 If a unit's upgrade is obsolete, then we try to upgrade to the next non-obsolete unit in line in the upgrade succession tree 2018-07-18 17:58:38 +03:00
Yair Morgenstern
a86460b345 Ranged units cannot indirect attack (e.g. if a hill is in the way) 2018-07-18 17:52:13 +03:00
Yair Morgenstern
5ee0c47e22 If a unit can be promoted twice, the promotion picker remains open after you pick the first promotion 2018-07-18 13:26:29 +03:00
Yair Morgenstern
23a9886de7 Expanded unit civilopedia description 2018-07-17 23:14:58 +03:00
Yair Morgenstern
12c925f79c Apollo program status correctly displayed in victory screen - you can now actually win a scientific victory! 2018-07-17 23:07:17 +03:00
Yair Morgenstern
b5d198adcd AI examines city construction each turn, in case there's something better to build 2018-07-17 23:05:55 +03:00
Yair Morgenstern
9e50051c61 When out of gold, units disband at a rate dependant on your deficit 2018-07-17 23:05:08 +03:00
Yair Morgenstern
5fed13eb76 Tiles with gold are now ranked higher if civ is in a bad financial situation 2018-07-17 13:13:23 +03:00
Yair Morgenstern
a7ddc07880 Changed city construction automation - should help the AI not constantly go broke 2018-07-17 12:53:43 +03:00
Yair Morgenstern
7ec95fefd9 No tile will now be in 2 cities simultaneously
Cities can't "take over" tiles neighboring to a city
2018-07-16 23:50:35 +03:00
Yair Morgenstern
bc404d9b17 Fixed bug that preclude building spaceship parts 2018-07-16 19:57:27 +03:00
Yair Morgenstern
e40bc91156 City cannot starve below 0 population
Starvation notifications when a city generates negative food, not only when population decreases
2018-07-16 18:31:32 +03:00
Yair Morgenstern
2cd3347cec Barbarians will not spawn in tiles that any civilization can currently see 2018-07-16 12:36:33 +03:00
Yair Morgenstern
ce7cb2ce17 Tiles outside the 3rd ring of a city can no longer be "worked" in the screen (before they could be chosen but didn't provide yields) 2018-07-16 09:43:36 +03:00
Yair Morgenstern
43ef42be5f When removing a terrain (e.g. Forest) whose improvement depends on it (e.g. Lumber mill), the improvement is removed 2018-07-16 09:17:42 +03:00
Yair Morgenstern
6ca586c3b1 Can no longer accept "empty" trades 2018-07-16 09:16:53 +03:00
Yair Morgenstern
da3d749547 When unable to support units, they disband one by one instead of all at the same time 2018-07-15 19:51:27 +03:00
Yair Morgenstern
68781ed5f7 Units can only upgrade within your borders (thanks Noam!) 2018-07-13 17:28:08 +03:00
Yair Morgenstern
7e34d95707 After a civ loses enough resources to go "negative", trades relating to that resource are cancelled 2018-07-13 16:17:11 +03:00
Yair Morgenstern
d34a3cd1a2 After accepting a trade you cannot "accept" the same trade again 2018-07-13 16:13:36 +03:00
Yair Morgenstern
cfe231ee4e Barbarians no longer disband units for lack of gold 2018-07-13 16:10:45 +03:00
Yair Morgenstern
bfb53a1940 Updating happiness happens in a different thread so it doesn't impede the update() function 2018-07-12 19:17:58 +03:00
Yair Morgenstern
c05503bb86 Attacking with a unit disables its "move" command 2018-07-11 21:31:59 +03:00
Yair Morgenstern
3215e0eea9 Displayed happiness updated within the turn (thanks Am-Per-Sand!) 2018-07-11 21:25:23 +03:00
Yair Morgenstern
4196f72a20 Can no longer see enemy city construction progress, enemy city health of unviewed cities and improvement progress in unviewed tiles (thanks Am-Per-Sand!) 2018-07-11 19:20:03 +03:00
Yair Morgenstern
a1d358e9c8 You can now trade "gold per turn" 2018-07-11 19:13:59 +03:00
Yair Morgenstern
d385ebd10b XP and promotions are retained when upgrading units (thanks Noam!) 2018-07-11 19:10:18 +03:00
Yair Morgenstern
3425c117ff Automated workers will build camps on forest tiles where they can 2018-07-10 12:29:29 +03:00
Yair Morgenstern
f9ec46a376 Trades visually separated in overview screen 2018-07-10 09:07:36 +03:00
Yair Morgenstern
35b66316bc Camps are now buildable in forests without removing the forests (Thanks Noam!) 2018-07-10 09:04:45 +03:00
Yair Morgenstern
1b5f2a2e00 Free policies no longer increase future policy cost 2018-07-10 08:57:35 +03:00
Yair Morgenstern
73384ffb8c UI Bugfix - After conquering a city, unmoved city borders would stay the same color 2018-07-09 23:18:27 +03:00
Yair Morgenstern
949d64c53c Added tutorials for strategic and luxury resources 2018-07-09 22:51:50 +03:00
Yair Morgenstern
849129ac65 Added trade translation texts
Added duration to trade screen buttons
2018-07-09 22:43:32 +03:00
Yair Morgenstern
f0ac694ba1 Bugfix - Great People can no longer construct improvements on city centers 2018-07-09 22:21:38 +03:00
Yair Morgenstern
0c2f506412 Fixed bug where if an enemies capital was captured and he had no cities but he had a settler, the game would still try to relocate the capital 2018-07-09 17:30:44 +03:00
Yair Morgenstern
a511aa2927 You can no longer open 2 Yes/No popup instances at the same time (caused a crash if you opened 2 to disband a unit and clicked "yes" on both) 2018-07-09 17:24:44 +03:00