XaiJu
DORFteam
DORFteam

patreon


November Update

Hello all,

Last month was a bit of a bust for me, for a variety of reasons, and I wasn't able to get as much done on this project as I would have liked.

People voted to want to see more polish put towards the current basebuilding system, though this ended up being a little bit problematic, since it occurred to me that, due to the fact that many necessary systems are not already in place (namely the logistics system and render engine overhaul), focusing work on polishing structures would be a bit pointless, since those upcoming systems will greatly affect how the artwork for the buildings (and sprites in general) are designed.

Instead I decided to try and get to work on adding new structures. I'll start with what you may have already seen in some of my weekly preview videos, which are some additional defensive options for the Warband faction:


Obviously the guerilla faction's walls and defensive posts aren't going to be especially strong, but will work as a low-level deterrent for enemy units, and the flamethrower towers will work as cheap anti-infantry and light vehicle defense.


On the tougher side, I'm working on some additional defensive and support structures for the "Empire" faction; these will include simple bunkers, which initially have a basic function of increasing your total unit population cap and providing a defensive option for garrisoning a few units inside to fire out through the windows at enemy units, but these buildings will be able to be upgraded individually to include things such as a larger garrison storage size, increased population cap size, and even a huge general purpose defensive gun tower.


If you are wondering why I included two angles for these structures, that is because most structures will be able to be flipped when placed; since in some cases, the facing is important, such as the entrance/exit to the building facing in one direction, or for fixed gun weapons that can only fire in a limited angle. Plus I just like the idea of having a bit more control over building placement; some older RTS's would sometimes run into problems where starting positions would favor players whose factories or resource structures face a certain direction (such as a resource refinery facing the starting resource field). Also just because I'm a guy who loves intricate base layouts, certain facings of these bunkers are going to "plug" into the buildable concrete walls for this faction, to give that added sense of base aesthetics.


As for other ongoing projects, Tovl continues work on the first phase of redesigning the engine's resource system, which should be finished before the end of November. After that, the project will shift gears into a more pressing issue; you may have noticed it already, but most of the preview videos I've shown so far have very boring terrain layout. This is largely due in part to the fact that OpenRA's current level editor, quite frankly, sucks. Or rather, while it works fine for true 2D RTS games such as the original Command & Conquer, it sucks for building psuedo-3D/2.5D games such as D.O.R.F.

What does 2.5D mean? Well, despite using sprites, this RTS technically supports 3-dimensional movement. A cliff wall or upward and downward slopes aren't just visual trickery, they actually do in fact account for 3-dimensional movement; a unit moving up a slope will actually ascend, and a unit firing at a unit on top of a cliff will have to elevate its weapon to fire accurately. While this system sort of works, the map editor does not really support placing things such as cliffs and slopes, and in general is a pain to use (see the below GIF for how fun placing terrain tiles is as of this writing)



So not only will support for terrain editing that factors in Z-depth be required, but also other conveniences such as an auto-LAT system, to borrow more Command & Conquer terminology (for those curious, LAT stands for Lookup Adjacent Tile). This would function by making the map editor include a "painter" tool that lets you simply paint new terrain types onto the ground, with an automated system included that creates natural transitionary terrain tiles on any new terrain placed. This gets complicated, since there will be some terrain assets that are multiple tiles in size (such as shorelines), so each piece of terrain would need to have assigned to it dictionary of other terrain pieces that will automatically surround any new terrain placed with this "painter" tool. In other words, placing new terrain types in a way that is actually convenient and not excruciating.

Some other conveniences will be required as well, such as a "paint bucket tool" for rapidly filling in large areas of terrain with the same type of terrain, and a tool that you can assign multiple assets to, that when selected will drop in random assets from this user-generated dictionary every time an object is placed. What is that useful for? Well, currently, if I want to create, say, a forest, I need to select and place every single tree manually. This is not ideal obviously, but with a randomizer tool, I could assign those trees to a dictionary, then just select that dictionary in the randomizer tool, and it will pick a random tree from that dictionary every time I place an object with the tool on the terrain (for added convenience, the dictionary could be saved and simply loaded every time the map editor is used). This has other uses as well, such as placing other types of map doodads, like road signs, rocks, civilian vehicles, etc.


Another issue to bring up: you may have noticed a ton of visual errors in the latest preview video on Twitter and Youtube. To give some examples, check out these shadows:

Shadows are currently a huge, ugly problem in the engine, since they often cut off, shadow the objects beneath them weirdly, double over eachother, and just look hideous in general. While I am saving a more detailed breakdown of how this can be fixed for a later development blog, the short of it is OpenRA's render engine would need to be massively revised to include dynamic lighting and shadowing. While this sounds like nonsense given the 2D nature of the art assets, this could be achieved through given all sprites accompanying depth sprites (or alternatively, normals sprites), which would allow objects to be lit be nearby light sources (such as lampposts, gunfire, regular fire, etc), and cast shadows onto the terrain and onto other objects realistically. This would be a massive undertaking, but would drastically improve the look of the game and fix most of these errors. (as an aside, if you want to see what such a system looks like in action, look up footage of Brigador, which similarly uses 2D sprites but with the addition of depth sprites to determine lighting and shading for each object)

Another less complicated (but still very much ugly) issue is semi-opaque sprites. To make a long story short, the engine also does not handle depth sorting and sprite opacity very well and will often occlude pixels behind semi-opaque pixels, often given some objects a nasty outline effect.


Also seen here: more disgusting shadow errors.

The solution for this is more simple; stop using semi-opaque pixels on units. While semi-opaque pixels still have their place on assets such as smoke and fire effects, or the propellers on a plane, in that case those objects can display properly due to an engine override that simplifies depth sorting and (to put it simply) makes it look good. The issue is that messing with the depth sorting in this way results in errors for units and structures (or any object that you might conceive of as "solid") and creates new problems, such as sprites appearing to clip through eachother or be cut off in strange ways. So the short of it is, most of my existing sprites will have to be reworked to simply shave off the semi-opaque sprites and remove those ugly outlines (though this is easier than it sounds, but it still means a lot of busywork).

So, that concludes any updates so far (outside of what you may have seen on the weekly uploads to Youtube or Twitter). I should add that I will continue working on some additional structures (and trying to get the existing new ones ingame), but I will run another poll in a week with some more options on what you guys might want to see next.

Comments

It's pretty amazing reading about work that needs to be done and then seeing how good it looks in 2024.

Harrison Varley


More Creators