Wesnoth 2.0 and project Haldric?
Moderator: Forum Moderators
- revolting_peasant
- Posts: 229
- Joined: May 29th, 2012, 5:45 pm
Wesnoth 2.0 and project Haldric?
I read a mention of Wesnoth 2.0 and of project Haldric in the new constitution, and realized I haven't heard about these initiatives (initiative, singular?) before.
Now, I suppose it's a rewrite using a different "engine". But other than that I know nothing, so - I was hoping this forum's denizens could sketch out, roughly and in a couple of paragraphs what this change would mean for Wesnoth' development and perhaps w.r.t. capabilities exposed to the user (if there's any planned feature which depends on this transition.)
To describe myself as an "audience" for this explanation: I'm a C++ (and CUDA) software developer myself, but I've never worked with LUA nor gotten into the Wesnoth codebase.
Now, I suppose it's a rewrite using a different "engine". But other than that I know nothing, so - I was hoping this forum's denizens could sketch out, roughly and in a couple of paragraphs what this change would mean for Wesnoth' development and perhaps w.r.t. capabilities exposed to the user (if there's any planned feature which depends on this transition.)
To describe myself as an "audience" for this explanation: I'm a C++ (and CUDA) software developer myself, but I've never worked with LUA nor gotten into the Wesnoth codebase.
- Pentarctagon
- Project Manager
- Posts: 5564
- Joined: March 22nd, 2009, 10:50 pm
- Location: Earth (occasionally)
Re: Wesnoth 2.0 and project Haldric?
Initiative (singular, since they refer to the same thing). The basic premise is that there's currently a lot of technical debt present as well as a lot of custom implemented functionality (engine, UI toolkit, scripting languages, etc) that needs to be maintained, so it would be beneficial to use a separate engine rather than needing to handle all that ourselves. Haldric/Wesnoth 2.0 then is an attempt to re-implement the same gameplay on top of the Godot engine, and UMC would be created in the Godot editor rather than with WML and lua. This effort is being headed by Bitron and vultraz.
99 little bugs in the code, 99 little bugs
take one down, patch it around
-2,147,483,648 little bugs in the code
take one down, patch it around
-2,147,483,648 little bugs in the code
- revolting_peasant
- Posts: 229
- Joined: May 29th, 2012, 5:45 pm
Re: Wesnoth 2.0 and project Haldric?
@Pentarctagon: So, this Godot, I take it...
I have a few questions, if I may (and if you have the time):
I have a few questions, if I may (and if you have the time):
- Does Godot really obviate the use of a ubiquitous-markup-language? I understand WML has been central to how Wesnoth works and how its parts interact. Is there some equivalent (or adaptable mechanism in Godot?
- Have you "lucked out" to be able to just cut away a bunch of your code out, and keep most of the rest about the same, plus some glue? Or is it more complicated than that?
- Will you need to, or want to, extend Godot itself significantly?
- How performant is Godot? Or perhaps I should ask - how "heavy" is it on your system when running a game like Wesnoth?
- I don't think I can find the time to help you guys (and if I had free time - my LibreOffice RTL language QA work comes first). But - are you perhaps fundraising for this purpose?
- Pentarctagon
- Project Manager
- Posts: 5564
- Joined: March 22nd, 2009, 10:50 pm
- Location: Earth (occasionally)
Re: Wesnoth 2.0 and project Haldric?
Yep, that Godot.
For #1: The general equivalent would be Godot's scripting language, gdscript, which is very python-like.
For #2: It's less about lucking out as it is using Godot instead of custom implementing various things. For example, there obviously still needs to be a game engine, but it'd be Godot's engine rather than the custom implementation used in current Wesnoth.
For #3: I'm not really sure - I've not been especially involved in Haldric's development so far.
For #4: There have been some issues, though as I've understood it a lot of the problems stem from too closely following how things are done in current Wesnoth vs what's optimal for Godot. Bitron would be much better able to answer this, though.
For #5: Haldric is still pre-alpha, so there's nothing like that going on for it yet. There is a general Wesnoth Liberapay though.
For #1: The general equivalent would be Godot's scripting language, gdscript, which is very python-like.
For #2: It's less about lucking out as it is using Godot instead of custom implementing various things. For example, there obviously still needs to be a game engine, but it'd be Godot's engine rather than the custom implementation used in current Wesnoth.
For #3: I'm not really sure - I've not been especially involved in Haldric's development so far.
For #4: There have been some issues, though as I've understood it a lot of the problems stem from too closely following how things are done in current Wesnoth vs what's optimal for Godot. Bitron would be much better able to answer this, though.
For #5: Haldric is still pre-alpha, so there's nothing like that going on for it yet. There is a general Wesnoth Liberapay though.
99 little bugs in the code, 99 little bugs
take one down, patch it around
-2,147,483,648 little bugs in the code
take one down, patch it around
-2,147,483,648 little bugs in the code
Re: Wesnoth 2.0 and project Haldric?
I am happy to hear that there is some new development.
Would that mean that the python2 dependency would get updated to python3 in the process?
Or get dropped completely?
Cheers
Would that mean that the python2 dependency would get updated to python3 in the process?
Or get dropped completely?
Cheers
Re: Wesnoth 2.0 and project Haldric?
Is there any chance of reimplementing WML in Wesnoth 2.0 and thus allowing currently existing UMC to run on it?
Polish BfW fansite | Polish BfW translation | My Ladder profile
"When I say I've been playing for 10 years people come saying they've played for 15 years and that I know nothing about this game because I didn't use to play when the TRUE pros were playing xD" ~Hejnewar
"When I say I've been playing for 10 years people come saying they've played for 15 years and that I know nothing about this game because I didn't use to play when the TRUE pros were playing xD" ~Hejnewar
- Pentarctagon
- Project Manager
- Posts: 5564
- Joined: March 22nd, 2009, 10:50 pm
- Location: Earth (occasionally)
Re: Wesnoth 2.0 and project Haldric?
It's very unlikely. Work on Haldric is progressing very slowly however, so it most likely won't be ready for any sort of release for a while.
99 little bugs in the code, 99 little bugs
take one down, patch it around
-2,147,483,648 little bugs in the code
take one down, patch it around
-2,147,483,648 little bugs in the code
Re: Wesnoth 2.0 and project Haldric?
"Wesnoth has many strong points but team and users management are certainly not in them." -- pyrophorus
Re: Wesnoth 2.0 and project Haldric?
Interesting. So is there a 1.16.x release with the current 1.15.x code planed? It would be really nice to ditch python2 on my system since wesnoth is the last program depending on it.
- Pentarctagon
- Project Manager
- Posts: 5564
- Joined: March 22nd, 2009, 10:50 pm
- Location: Earth (occasionally)
Re: Wesnoth 2.0 and project Haldric?
1.16 will not be released for about a year, at least in the current plan.
99 little bugs in the code, 99 little bugs
take one down, patch it around
-2,147,483,648 little bugs in the code
take one down, patch it around
-2,147,483,648 little bugs in the code
Re: Python 2 removal
Even in 1.14, the only things using python2 should be some tools for UMC authors; tools that are run from outside the game itself. If ditching python2 breaks the game, then that would be a bug (please report it, either here or on Github).
For the UMC-authoring tools, using 1.15's tools should also be sufficient to work on content for 1.14. If we've removed a tool and not provided a replacement, then please say.
- revolting_peasant
- Posts: 229
- Joined: May 29th, 2012, 5:45 pm
Re: Wesnoth 2.0 and project Haldric?
@fabl: Can you compare and contrast the two different initiatives? And why there's this bifrucation other than the community focusing on a single engine?
Re: Wesnoth 2.0 and project Haldric?
At the time when I proposed the new WSL syntax (2016) and the concept behind W4L (I called it 'Irdya' back then),revolting_peasant wrote: ↑September 16th, 2020, 10:59 pm @fabl: Can you compare and contrast the two different initiatives? And why there's this bifrucation other than the community focusing on a single engine?
Vultraz was not very pleased with the proposals.
Then 2 years later Haldric was started, I have not been around at that time.
I have learned from Bitron that both projects are more different than I first thought.
Please be aware, I am not involved in Haldric yet, everything I write can be horribly wrong.
1) Haldric uses another license, while W4L uses GPL2+ like Wesnoth.
Thus Haldric needs to be reimplemented from scratch, while W4L makes heavy use of Wesnoth's old codebase.
I guess that gives W4L a huge advantages regarding the amount of work that needs to done for reaching Wesnoth's current state.
I can much faster translate c++ code into Moonscript than reimplementing everything from scratch, I guess most coders are like me in that way.
The advantage of Haldric's License is, more freedom, it can for example be used in commercial games, something I feel is a good thing, not every open source developer agrees.
2) The Löve game engine is a specialist for 2d games. It is like Wesnoth more or less a wrapper around libsdl and other libs, offering a similar api.
That helps greatly when it comes to port Wesnoth C++ sdl calls into Löve api calls.
Godot on the other hand needs most likely new concepts, so not even inspiration from the old codebase is so easy to translate into implementation.
I guess that makes Haldric to a long term project,
resulting in a different game.
3) Especially since it needs its own content created, not making use of existing umc.
W4L aims for being a replacement for the current engine, hopefully within the next 2 years.
Haldric aims for being a fancy (3d ?) successor to Wesnoth in a more distant future.
In the W4L development thread I speculated about Haldric being a client to the W4L server in the future.
So both projects have different goals and I don't see a reason why they shouldn't happily coexist.
W4L is not that complex, it can be finished with only a few Moonscript coders, which is far easier than c++, so I can recruit coders from a much broader range, not draining any c++ developers from the main project or Haldric.
"Wesnoth has many strong points but team and users management are certainly not in them." -- pyrophorus
- Pentarctagon
- Project Manager
- Posts: 5564
- Joined: March 22nd, 2009, 10:50 pm
- Location: Earth (occasionally)
Re: Wesnoth 2.0 and project Haldric?
To add a couple bits if information:
- For licensing, the practical effect is that Haldric would be able to use libraries that are forbidden by the GPL currently. Steam's SDK is not GPL compatible for example, so Haldric would potentially be able to add support for Steam achievements whereas current Wesnoth will simply never be allowed to do that.
- Haldric isn't going to be a 3D game
99 little bugs in the code, 99 little bugs
take one down, patch it around
-2,147,483,648 little bugs in the code
take one down, patch it around
-2,147,483,648 little bugs in the code