Galactic Empires (Wesnoth in Space)

Discussion of all aspects of multiplayer development: unit balancing, map development, server development, and so forth.

Moderator: Forum Moderators

Post Reply
User avatar
Lord-Knightmare
Discord Moderator
Posts: 2092
Joined: May 24th, 2010, 5:26 pm
Location: Somewhere in the depths of Irdya, gathering my army to eventually destroy the known world.
Contact:

Re: Galactic Empires (Wesnoth in Space)

Post by Lord-Knightmare »

dwarftough wrote: June 3rd, 2022, 2:25 am
mattsc wrote: June 2nd, 2022, 11:44 pm However, this appears to be an engine bug in Wesnoth, rather than a problem with GE. I can create the same problem by adding a tunnel to one of the default 3-player maps. It appears that the "enemy sighted" interruptions are not transmitted correctly when they occur through tunnels. I'll have a look at the Wesnoth source code to see if I can figure out what's going on, but most likely somebody else will have to have a look at this.
Uh (btw I wonder if Silver Mage has this kind of error too), either way we have to report this issue
Just remarking here that this bug has been seen in the first few versions of Citadel of Drand MP campaign as well. Just glad it's an engine bug and not a bug in the add-on.
Creator of "War of Legends"
Creator of the Isle of Mists survival scenario.
Maintainer of Forward They Cried
User:Knyghtmare-:-Friend me on Facebook-:-Follow me on Twitter
mattsc
Inactive Developer
Posts: 1215
Joined: October 13th, 2010, 6:14 pm

Re: Galactic Empires (Wesnoth in Space)

Post by mattsc »

dwarftough wrote: June 3rd, 2022, 2:25 am Uh (btw I wonder if Silver Mage has this kind of error too), either way we have to report this issue
Agreed. Either that or fix it ourselves. I believe that I have by now figured out what is going on (at least in my current use case). When the other player's MP client (or the replay engine) moves the first player's unit through the tunnel and there is an enemy unit visible on the other side of the tunnel, it stops because of a "sighted" interruption, while in reality it already knew that the other unit was there and continued moving. In other words, the unit does not have vision through the tunnel for the client (or the replay), while for the player moving the unit (or in game) it does. Or in yet other words, the client uses its own vision through the tunnel, rather than that of the unit moving.

The situation on the Gallatron map is slightly different, but the cause of the OOS error is the same.

So, in principle that should be a simple fix, make sure the correct side's vision is used. Now I just need to find where to fix it. Famous last words ...


EDIT: I just opened a pull request that fixes this.
mattsc
Inactive Developer
Posts: 1215
Joined: October 13th, 2010, 6:14 pm

Re: Galactic Empires (Wesnoth in Space)

Post by mattsc »

Version 0.3.0 of the AI is now on the 1.16 add-ons server.

This version introduces significant changes to the AI's purchasing of upgrades. Expensive upgrades are now allowed occasionally with a customizable probability, but only if the AI considers them important and at most one per turn (much less than that on average). Also, the random component of the upgrade rating has been increased. While the prioritization between upgrades remains, the choice between more or less equivalent upgrades is not as "scripted" any more as it was.

In addition, a lot of minor changes to individual ratings have been made, along with bug fixes and some internal code improvements. The complete changelog follows below, and all the gory details can always be found at the Galactic Empires AI github repository.

Watching some AI games, I'd say there's definitely no lack of upgrades being purchased, esp. when starting with a higher tech level. I've even seen launch pads installed for 50 gold. If anything, I'd say it's too much. In any case, I believe that the combined changes of this update and 0.2.0 are definitely an improvement, but I am sure that there are plenty more to be made, so please keep the comments coming.


Galactic Empires AI v0.3.0 Changelog:

Code: Select all

----- 0.3.0, 3 June 2022 -----

- Upgrade CA:
  - Allow more expensive upgrades (with a customizable probability)
  - Rework the upgrade rating system:
    - While the general priorities remain, the random contribution to selecting
      between approximately equivalent upgrades is larger
    - Completely ignore upgrades with negativ ratings
    - A variety of minor rating changes, bug fixes, as well as code clean-up,
      simplification and speed improvements
- Utils: new function random_between
Computer_Player
Multiplayer Moderator
Posts: 153
Joined: March 16th, 2008, 6:39 am

Re: Galactic Empires (Wesnoth in Space)

Post by Computer_Player »

Hi! Thanks for the new updates! Been a while since I played wesnoth, but I am back with 2 new replays. Hope they are useful.

Need more games to evaluate the changes, but I will comment that the change in the blockade mechanic (not including transporters) feels nice.
In Ion Nova Quadrant, the Tentacle monster being able to move after hatching seems a bit overwhelming and you could quickly lose game just from that single alien. I suggest it not being able to move after hatching (or maybe have slow?) so as to not feel so overwhelming. Was only able to get my bearings due to a big tactical and strategic lead. Part of it is being encountered so early (where outcomes are magnified in effect). Perhaps moving this alien to a more outlying planet could mitigate this somewhat.

P.S. the Baracks purchase in the 2nd game was a misclick. In future games I will maybe attempt to use it. The Third Level Terran tech (institute) is something I will reserve judgement for now. It seems it is intended to facilitate planet based attacks, but I think it is best used in defence, allowing your workers to level up relatively quickly and make a defence, provided you have enough time and enough planet side units to do so. Otherwise you should be really careful of using it since Lvl 1 units have Upkeep.
Attachments
2p - GE Ion Nova replay 20220615-115310.gz
(62.21 KiB) Downloaded 9 times
2p - GE Beta Quadrant replay 20220615-100745.gz
(63.14 KiB) Downloaded 11 times
supvsetrt
Posts: 4
Joined: January 9th, 2020, 6:55 pm

Re: Galactic Empires (Wesnoth in Space)

Post by supvsetrt »

Ion Nova replay, dwartha vs lidary with intersting twists.
Attachments
2p - GE Ion Nova replay 20220916 vs Calandryl.gz
(83.86 KiB) Downloaded 7 times
name
Posts: 518
Joined: January 6th, 2008, 3:32 am

Re: Galactic Empires (Wesnoth in Space)

Post by name »

Bob_The_Mighty wrote: May 24th, 2022, 7:31 pm - New citizens now increase food store by 2
I may have discovered a bug with this. When a planet's population is reduced by citizens dying in warfare or getting beamed off planet, the food stores limit does not seem to go back down again. The result is a planet becomes ever increasingly "infertile" from the number of citizens it produced in the past even though its current population may be very low. This is most pronounced on worlds used to produce soldiers, since these citizens have high rates of death and redeployment to other planets.
dwarftough
Posts: 300
Joined: August 4th, 2019, 5:27 pm

Re: Galactic Empires (Wesnoth in Space)

Post by dwarftough »

name wrote: September 21st, 2022, 4:20 pm When a planet's population is reduced by citizens dying in warfare or getting beamed off planet, the food stores limit does not seem to go back down again.
Maybe folks can correct me, but I think it's always been like that, be it good or bad
Co-founder and current maintainer of IsarFoundation, Afterlife Rated and overall Wesnoth Autohost Project
name
Posts: 518
Joined: January 6th, 2008, 3:32 am

Re: Galactic Empires (Wesnoth in Space)

Post by name »

This has become more than an add-on, it is now a spectacular game in its own right. I find myself comparing Galactic Empires with Remnants of the Precursors, rather than with vanilla Wesnoth or anything else in its UMC ecosystem. What is more, this may be the first ever 4X game that can be played in a reasonable time frame. ^_^
dwarftough wrote: September 21st, 2022, 4:46 pm Maybe folks can correct me, but I think it's always been like that, be it good or bad
Hmm, I think you may be right that this was preexisting, and the rate increase just helped identify the bug. Plus, the enormous amount of improvements made by Bob_The_Might and mattsc in these recent versions makes the few remaining bugs stand out better.

I would definitely class it as a bug though, since it has unlimited growth and makes ground battles far too costly, especially in the late game. Citizens get so hard to replace, that it becomes far better to blow up enemy planets with capital ships than to invade with your precious remaining ground forces. And after destroying enough of their transports, the AI sides' economies permanently collapse (due to citizen depletion) even when all their planets remain intact.

Fortunately there seems to have an easy fix; I removed the food supply growth code altogether and played a few games with static food supply limits between 15 and 24, and it worked out quite nicely. With a static food supply limit, the food vs gold economy took less micromanagement, there were plenty of citizens for both the AI launched invasions and my own, and transporting seed colonists to new planets made much more economic sense. Of course, the population cap for each planet was still there and that did a fine job of limiting growth by itself.

One other usability suggestion - the Iildari Explorer line's petrify attack can really slow down the pace of battles since it makes the victim both disabled and invincible. Switching it to slows makes conflicts involving Iildari as well paced as any other.
dwarftough
Posts: 300
Joined: August 4th, 2019, 5:27 pm

Re: Galactic Empires (Wesnoth in Space)

Post by dwarftough »

name wrote: September 22nd, 2022, 11:33 pm I would definitely class it as a bug though, since it has unlimited growth and makes ground battles far too costly, especially in the late game. Citizens get so hard to replace, that it becomes far better to blow up enemy planets with capital ships than to invade with your precious remaining ground forces. And after destroying enough of their transports, the AI sides' economies permanently collapse (due to citizen depletion) even when all their planets remain intact.
Lack of any exhaustion mechanics will lead to population growing very fast, and I believe it might still be more profitable to expand economy with workers mining gold (now much more gold, as you can make more workers faster) and make an enormous fleet. And blow planets the same way as it is now. Ground units may be too expensive now, but I fear that full removal of exhaustion will make them too cheap. Well, this may be interesting as well, but probably it will still lead to space fights deciding everything (if not more)

P.S. I need to note, though, that I'm primarily considering human vs human play. Play vs AI is out of scope for my considerations
Co-founder and current maintainer of IsarFoundation, Afterlife Rated and overall Wesnoth Autohost Project
name
Posts: 518
Joined: January 6th, 2008, 3:32 am

Re: Galactic Empires (Wesnoth in Space)

Post by name »

dwarftough wrote: September 25th, 2022, 5:29 pm Lack of any exhaustion mechanics will lead to population growing very fast,
It depends on what you set the (static) food stores limit to. I tested at 30 and population growth seemed slow.
dwarftough wrote: September 25th, 2022, 5:29 pm I believe it might still be more profitable to expand economy with workers mining gold (now much more gold, as you can make more workers faster) and make an enormous fleet.
The solution for that would be to just raise the recruit cost for ships? For example, you could double the gold price of each ship unit.

Also, workers are most affected by the population caps and how many planets you have to mine. Whereas soldiers are the ones most affected by the population growth rate, since they often go off planet (where population caps have no effect) and then die and need to be replaced (quickly) by new population growth.
dwarftough wrote: September 25th, 2022, 5:29 pm And blow planets the same way as it is now.
You could also raise the recruit cost of bombardment focused ships in particular. Then the cheap transport ships loaded with ground troops become a more competitive option for attacking enemy planets.
User avatar
Bob_The_Mighty
Posts: 855
Joined: July 13th, 2006, 1:15 pm

Re: Galactic Empires (Wesnoth in Space)

Post by Bob_The_Mighty »

Hey. Thanks again for the feedback, I'm glad you're still having fun with this add-on. I'm reluctant to make big changes to recruit costs, but I'm open to more ideas about population growth, especially ways to make ground invasions more plausible. However, setting the static limit to 30 would mean new colonies grow very slowly, which was something I was trying to avoid. I notice you haven't mentioned the barracks HQ upgrade: doesn't this take the edge off the cost of producing soldiers? (Admittedly, I guess it will be rarely be used by the AI.)
My current projects:
MP pirate campaign: The Altaz Mariners
RPG sequel: Return to Trent
MP stealth campaign: Den of Thieves
name
Posts: 518
Joined: January 6th, 2008, 3:32 am

Re: Galactic Empires (Wesnoth in Space)

Post by name »

Bob_The_Mighty wrote: September 27th, 2022, 1:34 pm However, setting the static limit to 30 would mean new colonies grow very slowly, which was something I was trying to avoid.
I definitely agree. What I found was that because of the permanent growth of the food requirement (by 2) with every new citizen, planets ended up with food requirements as high as 60+, especially AI worlds after I had destroyed a number of their transports ferrying citizens between planets. And that meant very, very slow growth.

The core issue is that when a citizen is beamed off a planet or killed, the food requirement does not go back down by 2. Inevitably, this leads to planets that can (practically) no longer produce citizens.

I fixed this on my local copy by deleting {VARIABLE_OP hq[$i].attack[0].number add 2} in macros/headquarters.cfg (on line 287) and then for every units/(race)/HQ.cfg I set [attack] number=18 (I found number=15 also worked, it just creates faster growth). This worked quite well, both for my economy and the AI ones. Populations grow at a fast and steady rate until they hit their planetary population caps, which then pressures you to ferry colonists to new worlds.
Bob_The_Mighty wrote: September 27th, 2022, 1:34 pm I notice you haven't mentioned the barracks HQ upgrade: doesn't this take the edge off the cost of producing soldiers?
I am afraid not; it is a one-time upgrade whereas the food requirement grows forever. (And the barracks does not help replace workers killed in raids or inside transports).
Post Reply