Behold ! The Game Editor running on Windows ! I’ve been striking in the wind for months and finally there’s a piece of Fallout Equestria that works on Windows. Turns out the only thing needed for something to compile properly was the code for the future Panda3D 1.9 version.
As expected, nothing of Panda3D actually works (that’s a whole other story), so of course the Level Designer tab is just a shrotcut to the beloved Windows’ crash solving dialog. Still: everything else works fine and dandy and that sure is great news !
EDIT: As a matter of fact, with a few more hours of investigation, Panda3D was also able to work. We still have a few issues, namely I had to comment out all the collider building (there’s a single particular call to Panda3D that systematically crashes for some reason), and I’ve been unable to load any model or texture… which sort of kills the purpose of a Level Designer.
The result of this is that the Game Editor doesn’t crash anymore, the Level Designer is accessible, but unusable due to the lack of models. With these progresses I’m sure of it, the working Windows build isn’t far anymore.
EDIT#2: And with a few other hours, most of the game works as well (that is, except for the collider and asset loading issues) ! This is an accurate depiction of me right now:
Lots and lots of work lately, A lot of love has been directed to the Game Editor. Which is the topic of the next video: using some of our project’s Stable models, I quickly set up a little stable landscape and terrain for the characters to move.
Yes ! This project is still alive !
It has been quite long since we have last given news… I was actually hoping I could finish a very important step of the development before posting.
This specific step is the Windows port of the game and game editor. In this post we’ll talk mostly about this issue, but we’ll also scratch the surface of what has been done since May, and about my plans to give more time to this project in the near future.
Let’s get this thing started:
- Windows support
How can it be that a port to Windows is so long to make ? Did I develop all this thing without ever keeping in mind that it was supposed to be multi-platform ?
Well no, in fact multi-platform was on my mind since the very first lines of code. This is not the issue. Truthfully, if we were to compile the Windows version with Mingw (the Windows version of gcc, which is the compiler we use for the Linux version), the port would’ve been done and finished in less than a day.
Sadly, we cannot use Mingw. We’re stuck with Microsoft’s VC. A compiler that sucks on so many level that I’ve been working two months to get around the lousy implementation of C++11 it provides.
Well, this didn’t take me two months: merely a week. But then I had to work around the fact that there is no forward compatibility between different versions of MSVC… and since unlike Linux, Windows doesn’t use a proper package manager, I had/have to rebuild all the libraries that our 3D engine uses.
Then there are also the several unexplained linking issues with the Game Editor.
All of these issues seriously threaten the future of this project (no Windows support = no point continuing the project).
But I haven’t lost hope.
Currently the game builds. It is impossible to run it in Debug mode for unexplained reasons (probably linking issues), so this makes debugging extremely harder. However, the game does run in Release mode… it just crashes at some point, and I assume it is caused, again, by linking issues… all of this is due to the complete lack of forward compatibility between different MSVC versions.
I always knew that developing on Windows was a much harder task than on any other OS.
But I never realized that porting a project so simple as this could take so much time.
- Better news
Windows hasn’t been the only thing on my mind lately. Considering that working solely on Windows for months would probably have turned me into a crazed furious creep, I had to find other ways to contribute for the project.
In fact, I’ve had the time to do so many things that the first beta version of the engine is near completion.
Most of the changes have been made in order to ease the pain of the game designers: the editing tools have been made much easier to use, and the script developers have a much wider API to play with.
The documentation has also seen a lot of new additions on the following topics:
- Cutie Mark Acquisition Program (how to play with our statistic system)
- Scripting tutorial
- How to compile for Windows (which, of course, isn’t completely ready yet given that we can’t even compile it properly by ourselves)
- The projects during the next months
Going into the job market too soon has been a great nuisance for a lot of my various personal projects and plans for my life.
I will finally take a pause, during a month, in September, which will allow me to give more time to the Fallout Equestria RPG project. I hope this will help us work through the two months of Windows porting which forced us to threw our previous schedule.
Well, that’s all. You know just as much as I do about the current situation of the project !
I hope the Windows part wasn’t too depressing: bear with us guys, we’ll pull through !
Good day everypony !
This week, the first year anniversary of the project has come to pass !
Of course, this calls for a video demonstration and a little recap on what we’ve accomplished with lot of funny anecdotes and such.
And of course, we’re going to do nothing of that today.
Correct that. We actually are going to do some of that. I put together a little demonstration of some of the features we’ve implemented lately.
There are a few not-completely ready features displayed and the montage proved difficult (I couldn’t record any audio, and the cropping has failed on some part of the video). I still hope that you’re going to enjoy seeing a sneak peek at the current state of things.
Here, have a video:
Of course there are still plenty of features to be revealed, and everything in this video is prompt to change.
Word of warning, this post is aimed at our developer readers. Other people will have to wait a tiny little while longer. Hopefully it will be worth the wait !
Lately and thanks to the support of Equestria Gaming we received a great deal of new visitors. We gratefuly thanks Equestria Gaming while saluting our new subscribers !
This also had the effect of attracting a few developers interested in the project. It made something very clear: I needed to start working on a technical documentation to give other developers the tools needed to start hacking here and there, or even join the project.
I had been paralyzed until now, mainly because I freaking hate every documentation tool that exists out there. They’re either ugly, too much text-oriented, and usually encourage us to pollute headers with huge blobs of commentaries.
To answer this issue, there was only one possible solution: I wrote my own documentation generator.
Twilidoc is a documentation generator that generates a huge json file, and then displays it in a tiny web interface.
- Accurate syntax coloration for C++ chunks of code
- UML diagram generation
- Powerful search features
- Contextual information popping up when appropriate
- Filtering of the displayed data
I created a repository with a short manual for developers who might be interested in using Twilidoc (and/or improving it):
Fallout Equestria RPG’s documentation itself can be checked out directly from its own repository:
It’s been one of the last missing essential feature for a while and I’ve finally started to implement it.
Conceiving a good system for easily describing quests and interacting in an efficient manner with the rest of the game is not such a trivial task. However, the event system used in pretty much everything in the game actually paid off by making this much easier than I thought.
The quest system is now on the works:
Quests are composed of a set of objectives that are completed when a set of conditions are met: they can be triggered by game events, or scripts, and will themselves be able to unlock other objectives, giving the player several choices to end the same quests.
The Pipbuck now also implements an app to check up on your quests and their current progression (though the progression checking is still a WIP).
The Pipbuck Quest Application
On other news, I’ve also spent some time on tackling down a lot of issues, bugs and performance limitations in the engine. While reducing the amount of code: this thing is 40k lines long. It’s hard to factorize it without reducing the simplicity or elasticity of the design, so it’s always a good thing when I find some way to do it.
Well that’s all for this time.
I still have a lot of work to do before that, but I do hope I’ll be able to put a special treat in the next post.
The fact that I have a lot of more important things to do motivated me to work a lot on the game engine instead. So this week saw a lot of improvements and new features.
I guess the main thing that happened this week is the work on the Worldmap Editor, which previously didn’t even exist. Not only does it allow us to create, pick and move cities on the worldmap, but it also bring new features to configure the cases that compose the map.
Just like in the old Fallout games, each case you walk in may influence the movement speed of the character, as well as the types of encounters you will make and the terrain on which the encounter will happen.
The development on this tool isn’t completely over yet, but the next additions will wait until I work on a good character sheet tool for the game editor.