Experiment in loading past eras/campaigns in cores
Moderator: Forum Moderators
Re: Experiment in loading past eras/campaigns in cores
As for the case of the previous "The Deevils Flute" I posted here this time, the add-on author seems to have adapted 1.16, so I made a POT file again and reviewed almost all the text files to make the translation file again.
That said, it was still the main machine translation, and even so, the machine translation site's translation ability had improved considerably compared to last time, which was helpful.
I mainly tweaked the command tone and the honorific tone in the speaker's position a little bit, and a little bit where I changed it to a free translation, which may not be correct in actual play.
That said, it was still the main machine translation, and even so, the machine translation site's translation ability had improved considerably compared to last time, which was helpful.
I mainly tweaked the command tone and the honorific tone in the speaker's position a little bit, and a little bit where I changed it to a free translation, which may not be correct in actual play.
- Atreides
- Posts: 1240
- Joined: March 30th, 2019, 10:38 pm
- Location: On the 2nd story of the centre village in Merwuerdigliebe turning the lights on and off
Re: Experiment in loading past eras/campaigns in cores
I just tried Swamplings with the 1.12 core and it works fine. What a cute campaign.
One oddity though is that the translation doesn't seem to work. Is it supposed to?
Got this in the log:
20230405 13:54:54 error general: Error opening language file for de_DE, textdomain wesnoth-Swamplings:
Failed to read plural forms function. Input: '(n != 1);\n;', error message: Plural-Forms expression reader: Could not parse expression, stopped parsing at:
(n != 1);\n;
^
Since the 1.12 core is made for some specific languages does that mean that only those will work?
Personally I don't mind, I find the English to be quite charming and am skeptical that the German translation would be as good. I don't myself think I'd be able to get the nuances right but that's probably just me.
p.s. Also wondering if I can use the 1.10 core to play 1.10 era's (after fixing the _info.cfg)? I may be out of a "job" LOL. Well not completely, lots of juicy stuff in 1.8 and older...
One oddity though is that the translation doesn't seem to work. Is it supposed to?
Got this in the log:
20230405 13:54:54 error general: Error opening language file for de_DE, textdomain wesnoth-Swamplings:
Failed to read plural forms function. Input: '(n != 1);\n;', error message: Plural-Forms expression reader: Could not parse expression, stopped parsing at:
(n != 1);\n;
^
Since the 1.12 core is made for some specific languages does that mean that only those will work?
Personally I don't mind, I find the English to be quite charming and am skeptical that the German translation would be as good. I don't myself think I'd be able to get the nuances right but that's probably just me.
p.s. Also wondering if I can use the 1.10 core to play 1.10 era's (after fixing the _info.cfg)? I may be out of a "job" LOL. Well not completely, lots of juicy stuff in 1.8 and older...
Re: Experiment in loading past eras/campaigns in cores
Thanks a lot for the report, I will fix that ASAP. [edit] Fixed in version 1.2.0d-i18n.3 [/edit]Atreides wrote: ↑April 5th, 2023, 6:11 pm One oddity though is that the translation doesn't seem to work. Is it supposed to?
Got this in the log:
20230405 13:54:54 error general: Error opening language file for de_DE, textdomain wesnoth-Swamplings:
Failed to read plural forms function. Input: '(n != 1);\n;', error message: Plural-Forms expression reader: Could not parse expression, stopped parsing at:
(n != 1);\n;
^
You could tryp.s. Also wondering if I can use the 1.10 core to play 1.10 era's (after fixing the _info.cfg)? I may be out of a "job" LOL. Well not completely, lots of juicy stuff in 1.8 and older...

The progress on core 1.10 is slow and I can't guarantee that it would be working at this time.
The rate of success will certainly depend on the complexity of the WML code in the add-on from 1.10. Good luck.
"simply put, it's an old game"T — Cackfiend
- Atreides
- Posts: 1240
- Joined: March 30th, 2019, 10:38 pm
- Location: On the 2nd story of the centre village in Merwuerdigliebe turning the lights on and off
Re: Experiment in loading past eras/campaigns in cores
Thanks for the quick fix! (Just tried it and it is fine, the translation is pretty good too! Interestingly it also fixed the missing music (no music played when I switched cores but now it does) I'd not mentioned earlier. Shame I suck so bad at campaigns though. Lost Misrin on turn 4 and game over. But a really entertaining story as far as I got.)
I guess I'll experiment a bit and see if 1.10 eras work. Should be fun.
I guess I'll experiment a bit and see if 1.10 eras work. Should be fun.
Re: Experiment in loading past eras/campaigns in cores
Feel free to point to any issue if you hit any and I will have a look at it.
The purpose of the core is not to reach a theoretical 100% compatibility with 1.10 engine, but full compatibility with features used in 1.10 add-ons. So I don't go through the differences between the engines of 2 versions but fix the problems after they are identified by running an add-on.
Of course, compatibility through changes in the 1.16 C++ engine is outside of the scope and features that require such changes would be left unsupported.
"simply put, it's an old game"T — Cackfiend
Experiment with 1.16 core in BFW 1.17
A new core 1.16 has been put up for download as an add-on for BFW 1.17.
Inside this core, you will find the Ladder Era (1.16) as available on BFW 1.16 add-on server. So you will be able to run the ladder era on the new version while waiting for the official release of Ladder Era. As the era is running within core 1.16, it will run against the default era with stats from version 1.16.
So you're isolated from the latest changes in the development version.
If you're the author of a 1.16 campaign and you want to be shielded from changes in stats for default units in the development version, you can put your campaign without change on the 1.17 add-on server if you add the lines
Feel free to report here any trouble with linking your campaign to the core 1.16.
Inside this core, you will find the Ladder Era (1.16) as available on BFW 1.16 add-on server. So you will be able to run the ladder era on the new version while waiting for the official release of Ladder Era. As the era is running within core 1.16, it will run against the default era with stats from version 1.16.
So you're isolated from the latest changes in the development version.
If you're the author of a 1.16 campaign and you want to be shielded from changes in stats for default units in the development version, you can put your campaign without change on the 1.17 add-on server if you add the lines
core="core_1_16"
and dependencies=Support_1_12_Core
(note: _12_ not _16_) in your _server.pbl. Your campaign will then use the units with stats from version 1.16 unchanged.Feel free to report here any trouble with linking your campaign to the core 1.16.
"simply put, it's an old game"T — Cackfiend
- Atreides
- Posts: 1240
- Joined: March 30th, 2019, 10:38 pm
- Location: On the 2nd story of the centre village in Merwuerdigliebe turning the lights on and off
Re: Experiment in loading past eras/campaigns in cores
I finally got around to trying out some old 1.10 stuff and it doesn't work. : (
Of the 4 1.10 campaigns I downloaded 3 gave errors (missing macro) and 1 passed. I moved the 3 out and tried to load the passing one but when I switch core to 1.10 it tells me no campaigns are available at all.
Or did I not do it right?
Puzzled.
Of the 4 1.10 campaigns I downloaded 3 gave errors (missing macro) and 1 passed. I moved the 3 out and tried to load the passing one but when I switch core to 1.10 it tells me no campaigns are available at all.
Or did I not do it right?
Puzzled.
Re: Experiment in loading past eras/campaigns in cores
Sorry to hear that. Have you edited the file _info.cfg of the add-ons to add the lineAtreides wrote: ↑January 12th, 2024, 11:04 pm I finally got around to trying out some old 1.10 stuff and it doesn't work. : (
Of the 4 1.10 campaigns I downloaded 3 gave errors (missing macro) and 1 passed. I moved the 3 out and tried to load the passing one but when I switch core to 1.10 it tells me no campaigns are available at all.
Or did I not do it right?
Puzzled.
core=core_1_10
?You could give me the list of the add-ons and I would try on my side to check what is going wrong. Regards.
"simply put, it's an old game"T — Cackfiend
- Atreides
- Posts: 1240
- Joined: March 30th, 2019, 10:38 pm
- Location: On the 2nd story of the centre village in Merwuerdigliebe turning the lights on and off
Re: Experiment in loading past eras/campaigns in cores
Thanks, that got me one step farther. Now all 5 campaigns show up.demario wrote: ↑January 13th, 2024, 4:04 amSorry to hear that. Have you edited the file _info.cfg of the add-ons to add the lineAtreides wrote: ↑January 12th, 2024, 11:04 pm I finally got around to trying out some old 1.10 stuff and it doesn't work. : (
Of the 4 1.10 campaigns I downloaded 3 gave errors (missing macro) and 1 passed. I moved the 3 out and tried to load the passing one but when I switch core to 1.10 it tells me no campaigns are available at all.
Or did I not do it right?
Puzzled.core=core_1_10
?
You could give me the list of the add-ons and I would try on my side to check what is going wrong. Regards.
Unfortunately all 5 cause Wesnoth to crash back to the OS. Tried it both with WML wayback mod option chosen and not chosen.
Here is the log:
Code: Select all
Battle for Wesnoth v1.16.11 x86_64
Started on Sat Jan 13 13:13:48 2024
Data directory: /app/share/wesnoth
User configuration directory: /home/USER/.var/app/org.wesnoth.Wesnoth/config/wesnoth
User data directory: /home/USER/.var/app/org.wesnoth.Wesnoth/data/wesnoth/1.16
Cache directory: /home/USER/.var/app/org.wesnoth.Wesnoth/cache/wesnoth
20240113 13:13:48 warning general: setlocale() failed for 'de_DE'.
20240113 13:13:48 warning general: setlocale() failed for 'de_DE'.
Setting mode to 1920x1080
Checking lua scripts... ok
20240113 13:13:55 warning filesystem: Conflicting files in binary_path: '/app/share/wesnoth/images/misc/logo.png' and '/home/USER/.var/app/org.wesnoth.Wesnoth/data/wesnoth/1.16/data/add-ons/Support_1_12_Core_Resources/core-1.12/images/misc/logo.png'
/usr/include/c++/13.2.0/bits/stl_vector.h:1125: std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::operator[](size_type) [with _Tp = std::shared_ptr<ng::create_engine::extras_metadata>; _Alloc = std::allocator<std::shared_ptr<ng::create_engine::extras_metadata> >; reference = std::shared_ptr<ng::create_engine::extras_metadata>&; size_type = long unsigned int]: Assertion '__n < this->size()' failed.
Re: Experiment in loading past eras/campaigns in cores
an assertion is always an error in the c++ engine code, so feel free to file a bug report if you have an somewhat easy way to reproduce (or alternatively a stacktrace), (that said, it is most of the time also a bug in the wml code, the error in the c++ side is then not to give a better error message )
Scenario with Robots SP scenario (1.11/1.12), allows you to build your units with components, PYR No preperation turn 1.12 mp-mod that allows you to select your units immideately after the game begins.
- Atreides
- Posts: 1240
- Joined: March 30th, 2019, 10:38 pm
- Location: On the 2nd story of the centre village in Merwuerdigliebe turning the lights on and off
Re: Experiment in loading past eras/campaigns in cores
Just dropping a line to say that it's working fine so far with The Militia. The other 3 also load but naturally I've not started them yet.
I did have a question about the display of some of the units. In the 1.10 core some units like the Poacher (I think it was) show up with a (1.14) added to the unit's name. I'm guessing this means it is using the 1.14 and older version? It is a little puzzling to see 1.14 while "playing 1.10" so I'm trying to figure it out. I mean, what is this telling me? : ) Is the info really needed?
I did have a question about the display of some of the units. In the 1.10 core some units like the Poacher (I think it was) show up with a (1.14) added to the unit's name. I'm guessing this means it is using the 1.14 and older version? It is a little puzzling to see 1.14 while "playing 1.10" so I'm trying to figure it out. I mean, what is this telling me? : ) Is the info really needed?
Re: Experiment in loading past eras/campaigns in cores
I made a fix to make it easier to load 1.10 add-ons in core "Selamat" (core_1_10). It is available for download at version 1.4.7 of the add-on.
Actually, if a unit name has no suffix, what it tells a BfW 1.16 player using the core 1.10 is that this unit has the same stats as the one they know from BfW 1.16 (ie no change in this unit definition between 1.10 and 1.16). Similarly, if the name has "(1.14)" suffix, it tells the same 1.16 player using the core that the unit is the same as they used to know in BfW 1.14 (possibly they know the change in stats between 1.14 and 1.16). So the suffix is defined from the 1.16 player's perspective rather than using the core 1.10 as the reference.Atreides wrote: I did have a question about the display of some of the units. In the 1.10 core some units like the Poacher (I think it was) show up with a (1.14) added to the unit's name. I'm guessing this means it is using the 1.14 and older version? It is a little puzzling to see 1.14 while "playing 1.10" so I'm trying to figure it out. I mean, what is this telling me? : ) Is the info really needed?
This is mainly useful for people who look at old 1v1 replays. If they see something strange in the replay, it is a reminder that some of the stats may not be the ones they are familiar with from the current version. The role of a unit might have change in some 1v1 matchup after the stats have been changed. The suffix also helps the player to know which versions they should compare to know the details of the earliest stats change applicable in that version.
If you play an add-on in the core 1.10, and see a unit with a suffix that it is clearly too weak or too strong, you can use this information to check if later changes in stats are likely to help fixing the problem.
About which changes of unit stats are actually highlighted by a suffix, the rule is as follow:
- defenses, resistances and movement (and mandatory traits) are highlighted by a suffix to the unit race when applicable to the whole race
- hitpoints, change in advancement (and defenses, resistances and movement when specific to the unit) are highlighted by a suffix to the unit type
- cost, max experience is highlighted only for recruitable units (by a suffix to the unit type)
- changes to attack (strikes, damage or damage type) are highlighted by a suffix to the attack name
- change to undead variation is not highlighted, but variations have a suffix if their stats changed
Last edited by demario on April 7th, 2024, 11:43 am, edited 2 times in total.
"simply put, it's an old game"T — Cackfiend
- Atreides
- Posts: 1240
- Joined: March 30th, 2019, 10:38 pm
- Location: On the 2nd story of the centre village in Merwuerdigliebe turning the lights on and off
Re: Experiment in loading past eras/campaigns in cores
Thanks for the explanation. I guess it's needed for the replays. It sure highlights changes too. I got curious and ran a diff on my installed 1.16 & 14 & 12 and was surprised to see how many stat changes 16 brought. 14 was mostly non stat changes although more (265 vs 251) files were changed from 12. Naturally all the magenta macros were gone which explains it. : )
As for the Poacher he gained 1 hp in 1.16. I sort of recall reading about how he needed to be "buffed". Hehehe. I expect the 1.18 version will have tons of (1.16) marked units what with all the planned changes.
The Khalifate -> Dunefolk I -> Dunefolk II changes however are massive. Whew. Hmmm I should check the latest 17 with 16 and see how they are being changed...
As for the Poacher he gained 1 hp in 1.16. I sort of recall reading about how he needed to be "buffed". Hehehe. I expect the 1.18 version will have tons of (1.16) marked units what with all the planned changes.
The Khalifate -> Dunefolk I -> Dunefolk II changes however are massive. Whew. Hmmm I should check the latest 17 with 16 and see how they are being changed...
Re: Experiment in loading past eras/campaigns in cores
The emulator doesn't work for me.
When I hit k and select a different core, it starts loading, then fails first
"Error loading custom game configuration files. The game will try loading without add-ons." Details: unit type not found: Bone Knight
then I hit OK
"Error loading custom game configuration files. The game will fallback to the default core files." Details: unit type not found: Bone Knight
then I hit OK again, and it loads 1.18.
(It's not always the Bone Knight that's the unit type not found.)
When I hit k and select a different core, it starts loading, then fails first
"Error loading custom game configuration files. The game will try loading without add-ons." Details: unit type not found: Bone Knight
then I hit OK
"Error loading custom game configuration files. The game will fallback to the default core files." Details: unit type not found: Bone Knight
then I hit OK again, and it loads 1.18.
(It's not always the Bone Knight that's the unit type not found.)
Re: Experiment in loading past eras/campaigns in cores
Which version's emulator are you loading?
Can you give the list of add-ons you have installed? It it part of the the build information provided by the game by clicking on the


"simply put, it's an old game"T — Cackfiend