Progress Report - Main Village Sunset


This is a room that I've restarted development countless times, and it's probably the area which I have more hours on it. Due to the manually placed vegetation for the final version, it took very long since the last Progress Report. The area now features about 1100 dynamic vegetation models plus 1500 static ones for the unplayable out of bounds terrain. 

This new vegetation is far from perfect and has issues but adds more detail to the Village. To simplify the process only two SMX entries were used for the main model (the one that cover most of the playable area). It can swing a little out of pace and unnatural, if nearby models end up using the same SMX entry. This undesired swing was mitigated but can still happen depending on the location. 

Originally it was merged with the room r312, which is the smallest room in the game (as far as I know) and the INIT present is just for a locker door functionality. This merge was done to preserve the ETM, as the St6 rooms are glitched. In these rooms once an ETM is broken it remains that way, even after going to the menus, so using the testing rooms for it would bring side effects. Unfortunately I still don't know a way of fixing this issue.

In the end it was not a good idea to keep both rooms merged. As the room was taking shape, the ImagePack started to use too much memory, and the SMD TPL got closer to its limit. It is already know that once the TPL is filled with too many textures it can get corrupted. This causes some strange behavior like triggering the injured state for Leon. 

A possible workaround is to use the r100 BLK, to call other SMD (inside DAT files), but this approach adds complexity and is not that reliable as we'll see later. So in the end the original r312 was removed, all that merging process ended up being a big waste of time, but at least I've learned some things in the process. 


The Church Coordinates


By this time we all know that the church position in the main village is totally wrong. It was already mentioned here in the blog, that most rooms have no reliable coordinates, perspective or even scale of distant models, sometimes it's just a "png" floating in the horizon. In this case the r108 Church feels to close to the Village, where it should not be.

Theses inconsistencies are really annoying especially for open areas. At that time the Gamecube couldn't run all the maps with full detail, so the out of bounds horizon was made with simple LODs and billboards, being only approximations of the nearby areas, not what they really are when playing with the level loaded. 

This change brings a few problems for cutscenes early in the game, and requires more models which adds poly count to the room, but even with these downsides I think it will be welcome. That simple Vanilla LOD was not convincing enough. I personally think, that now with an extended playable area, where the player can walk around the Insigna door,  the original can look unsettlingly wrong. This creates an uncanny-valley effect due to the incorrect perspective.



Perspective from r103 door


The coordinates accordingly to different rooms


So I kept this new position, and edited the EFF billboards to make it visible from the Village. Sometimes a simple coordinate or model change, can require in a series of  tweaks to make it look cohesive. The windows of the church now uses ARGB to allow for independent intensity tweaking, simulating the lights coming from the interior.


Church New Coordinates


Another aspect that may look off is the Sun position, for artistic purposes it is placed in regions that the player will notice it for playability reasons. The sun position will be inconsistent as Leon moves to the Lake, but it was a way of squeezing the better visuals of each area, if for some reason it was placed where it should be, that would make it precise but not necessarily better.

I have to say that if I could go back in time and start all this again I would have chosen a cloudy sky approach, because is so much easier when you don't have to think about the sunlight and the inconsistencies that it creates. The lack of proper shadows and occlusion, the models being lit inside interiors and all the pain that it brings to split them and adjust, the sunlight LIT entries overloading ETM and so on. With a cloudy skybox nothing of that would be needed. I regret too much and with the saved time I could have finished multiple rooms by now. But anyway it is here and finally finished.


Vegetation


The new vegetation was all remade from scratch, as the Main Village is revisited at night during a storm. The individuality of the bushes allows to simulate wind movement by SMX tweaking, which looks better in motion when compared to the older approach.  

So to have better control of the speed and swing the Method 2 was the way to go. This approach consists in having a single small model, and then use the Modeldata.txt to make the placement instead of exporting big .obj of vegetation at once.

This new approach can be quite demanding for the hardware. The fact that the main model was made double sided (cloned and flipped) without the use of SMX "Offset[3] = 0x2" can increase the requirements to run it, when hundreds are present on screen simultaneously. 

The vegetation is not as detailed as modern games, but it was the best practical possible for an old game. It can't interact with Leon as he moves around, but there are type variations and in some areas size variations to add immersion. Various models were ported from r100.

More info can be read here.


The Locked Camera Issue


During the making of this room I came across a new issue which is the following: If too many SMD entries are in the field of view at the same time, the aim can simply get lock/stuck. It's a very strange "bug" that feels more like an engine limitation than anything else for me. It happened during the final stage when filling the area with vegetation. 

This is an infamous issue that seems to appear due to some sort of limit. It happened at some point after 700 vegetation SMD entries. It can be triggered in rooms that are using lots of model entries and effects. Fortunately I was able to reduce the effects and optimize the room to a point it no longer seems to happen (apparently). The issue makes the camera get locked (aiming or using free camera) when facing the models or effects that cause the overload. There's no warning in the console log. 



To avoid that, LIT was used to limit distant objects to be rendered, giving the game some headroom. When using fog it will always affect the look of big skyboxes. I don't really recommend using 0x1 or other invalid fog types to have an invisible fog, because it brings log warnings and potential crashes. It's preferable to use a type 0x2 and the LIT offsets [16..19] and [20..23] to move the fog far away, while using the Offset[68..71] to assure the skybox is not affected.

Is import to keep in mind that using aggressive draw distance, will result in pop-in issues. Fortunately there's a way of fixing it which consists on exporting the models with a DMY low poly rectangle or triangle that covers the entire area. 

Otherwise the models could disappear at distance when out of range. This forces the game to render the object as it thinks it's always close to Leon, so the Draw Distance setting has no effect over it, and at the same time still restricting the individual vegetation bushes and EFF to not overload. This is a trick that can always be used when we want a model to be always on screen, while using short draw distance.

Interestingly, "disabled" entries (with scale 0) in the SMD count to this overload, so the best we can optimize our room EFF, SMD, LIT wise the better. Things that are not used should be removed, it can be a simple entry or a bin inside the SMD. This will assure that the room is optimized, leaving more headroom for what really matters.

I've even tested splitting the vegetation to another SMD by using the BLK functionality, but the issue persisted.  The first time walking over the triggerzone it spawned correctly, but there was no action on screen. The moment the wolves were on screen, while shooting and among other particle effects, the same triggerzone spawned just a fraction of the vegetation models, so it's not reliable. If the room has too many effects and things going on, there's a big chance it will fail to call all the models.

More info can be read here.


The Wolves Encounter


Back in 2024 I remember making a simple LIT in 15 minutes to test a concept. The idea was about creating a sunset version of the Main Village. When entering the room a creepy song would trigger immediately as Leon walks forward, followed by a triggerzone of a Hunnigan a radio call. While she is talking Leon notice the presence of some wolves, turn off the radio and begin fighting for his life.


The 2024 Concept


What happens next is an encounter with 5 wolves, where one of them will drop the Red Catseye Gem. This one has a little more HP (3000 HP), and a slightly size increase compared to the rest. The idea of the wolves ambush was what made me start REvamped, I was trying to implement the concept when it started to become something bigger.

The wolves received custom black textures and creepy red eyes (it can be edited using EFF). The ImagePack also includes another variant that can be called by TPL, so now there are three possible types of wolves: the original, a brown one and these black ones. I plan to use the brown wolves during the night time in the raining areas. I'll leave the default one for the castle maze. 

Now back to the ambush! When the enemies are spawned, Leon turns off the radio and a dramatic background music is triggered during the fight. A cool detail is that even with the Insigna Key in hand, the r102 door will only be accessible after defeating all the enemies. 


Boo!


The wolves EFF (plagas) will be edited in the future it still too bright and has some issues to be fixed. There are also a few other em22 effects that requires tweaks and adjustments. The collision of the wooden fences was removed by a SAT flag for the enemies, the wolves were being hold by it creating a funny situation. The worst that can happen in gameplay, is that they will clip the fences which is unrealistic, but during the action and in the dark it is not a big deal.


"I was not programmed to jump fences bro"


The interior of the House with the Shotgun was destroyed and Leon can no longer use the ladder to go to the upper floor. An MDT message was added.




The Watchtower ladder was also destroyed, this prevents the player from exploiting the wolves. It will also be welcome for night Village as originally Ashley jumps from that high altitude and it's unrealistic, so now it's gone for good. The ETM ladder to get to the roof of the house is no longer present, preventing undesired flashlight interaction and AI exploit from the player.




All these restrictions were made considering the wolves poor AI, the limitations of the projected TEX flashlight, and other factors. The Watchtower ladder will be preserved during the day as there's no flashlight, Leon is alone, and also to not cut the Molotov functionality. 

Unfortunately there's no way to turn the flashlight 90 degree because TEX doesn't seem to have a fade effect on the projection, so the models far away end up having the same intensity which looks unnatural. This forces us to point it down by using values like 70, 65 or even 60 degrees. Remember that this flashlight is just a gimmick made by modding, and was not designed to be one from the ground up. For comparison this is like this flashlight lacks behind modern games.




If the fade was possible, it would look less outdated and more like these modern engines, however it is a delusion that will probably never happen, due to core limitations and how the game works.


Other Improvements


Most of the Light Shafts originally present in the exterior area were removed to save resources, and the interior ones were improved or replaced. 




These interiors are completely isolated from the exterior areas, making them dark and having good contrast which adds immersion. By the way the darker the room is, the more convincing this game will look due to it's age. Closed interiors benefit from it, while day time open areas may not feel as good.





New clutter was added giving the empty interiors more life. Also the wooden door from the previous r100 was ported and UVW mapping improved.





Dish from r100


Vanilla


Vanilla


Vanilla


More clutter was added for exterior areas. The floating wooden barriers were also fixed.


Vanilla


Vanilla


Floating issues




Some models from my previous r100 are back here...


Wooden Wheel



The cow is back! but dead... The wolves killed it before the villagers could save it. The water trough next to it has lower level compared to the others as they used it after their "meal", a small detail. The blood effects were ported from the dead Zealot in the previous r205 Sewer room.



r205 Blood Effects



The Heat/Haze effect was a bit modified.


Heat/Haze effect



Me after modding the room for 300h



The smoke effect of the fire was tilted in order to simulate the wind influence, it is also a bit denser.


Wind influences the smoke


Vanilla


I've used the Heat Effect to simulate a glass window effect for the Watchtower, it is a bit expensive to run but can be easily disabled as it has its own Effect Group. Users can edit Table 2 in the EFF file.


New glass effect


Remember that old window model, inside the House with the locked door? Well it was finally fixed! 

*The webp compression ruined the image but it can be noticed in-game.




Vanilla


We can see the Farm models now, when approaching the r103 gate.


Out of Bounds r103 3d Models


Vanilla


The same for Bitores's house, the r105 models can be seen from the Village.


Out of Bounds r105 3d Models


Out of Bounds r105 3d Models


Vanilla


The chandelier was replaced by a more rustic and simple model from r100, the chandelier will be present in Bitores's House. I'll probably add some candle effects during the night time. It has fewer polygons and fits better the simple villager houses, and the chain is now 3d. The repetitive Saddler frames were replaced by other textures.



Repetitive Saddler Frames


2d Chains (Vanilla)


3d chains from r100



Modified Beta Dr. Salvador Texture



Fixed some issues related to interior shadows. The big baked shadows for the exterior area were removed, it had issues and didn't fit well the new sunset time. The table legs in the Chainsaw House were also using the wrong model.


Shadow Issues (Vanilla)


Shadow Issues (Vanilla)


Vanilla 


Vanilla




A few clipping issues in the logs were fixed.


Vanilla



The exhaust from the oven was improved and now actually goes through the wall. 


Rounded corners


Exterior view


Vanilla


The stone barrier now has rounded corners, it was duplicated and now features both sides. I was too dumb to find a easy way or script to do it, so it was done all manually with symmetry modifier... it took years ugh!




Vanilla

Vanilla


Vanilla


Some issues present in the Vanilla and also in my previous "Main Village Overhaul" Village have been fixed here.





Vanilla


Vanilla


The r100 gate blockade will be present during the sunset, and at night the r105 blockade.



A tree trunk from r100 was included, adding detail to an empty area.




Vanilla


The birds nest was ported from r105, a random item will fall if the player shoots it, strangely it doesn't have a ground hit cue like the normal falling item, only a sound when destroying the nest. There's also a new hidden spinel somewhere in the area...



In the vanilla the clouds move, but too fast. During the creation of this room I've considered moving clouds but ended up removing it for the final version. At some point the room had 2 layers of moving clouds but it was discarded. It causes some transparency issues and blocks the sun partially while rotating. To remember, this is how the Vanilla clouds look in-game:





EFF Transparency Issues


The smoke coming from the fire in this area has some issues, particularly when interacting with the EFF leaves at distance it can show up a few inconsistencies. The EFF in general is handled very poorly, it's very common to see transparency artifacts and other types of issues. Those dynamic leaves present in the original always were problematic since the Gamecube


Gamecube


UHD 2014


UHD 2014


As the new modded Village is much darker the issue become even more evident so those moving leaves were removed, and the trees now features dead branches relying on SMD transparency rather than EFF. They don't move unfortunately, but looks much better. The transparency issue also affects the billboard trees and still not fully fixed in this area.






Inside the Warehouse there's a new explosive barrel, it uses custom textures from an unreleased experimental room I was working in 2025, it is a little different compared to the Vanilla red one.



The area is still unfinished and is being polished, it will be included in the 10th update. This update will take some weeks/months due to testing and troubleshooting, I tried to cover everything in this post, but some details can only be noticed by playing. This room is a showcase of what's possible to achieve with this old engine, when we have the tools, the time and the will.


Image Gallery
















Video