XL Engine Merger and BloodXL Update
Re: XL Engine Merger and BloodXL Update
I actually thought I gave my seal of approval too, but looking back at the thread, I must be imagining.
Great work indeed. Do keep it up.
Great work indeed. Do keep it up.
Raven wrote:Nevermore.
Re: XL Engine Merger and BloodXL Update
Your work really is quite impressive, very quick in progress. I can't wait to see it in action!
Re: XL Engine Merger and BloodXL Update
Ah, fuck, I confused the two, my bad.Daedalus wrote:... you can't be serious.

Hendricks266 wrote:fuck that guy, fuck that post
Dimebog wrote:Start fearing my dick and stop spamming.
Re: XL Engine Merger and BloodXL Update
I've started working on the level logic and multiplayer (just deathmatch to start with). I'll be doing a small test with a few people, most likely next week. I'll make sure to post a video of the current state at that point.
Multiplayer is being tackled now so that the all the elements, such as interactive/dynamic elements in levels and enemy AI work properly with a multiplayer system. However once the architecture is in place the primary focus will be single player until it is complete.
When the merger build is released both basic no-frills deathmatch and coop. will be supported with additional modes and features added later. In addition all the levels will be available for preview in single player as well as at least one weapon and one enemy complete. After this large XL Merger build is complete I plan on releasing a build either weekly or bi-weekly (depending on time) until all the features are complete. The upcoming build also marks the addition of Linux and Mac OS X support to the XL Engine.
There are a variety of additional plans beyond basic support - such as completing the build-in level editor started with DarkXL (complete with in-game previewing and editing) and other tools. I can talk about these plans at a future date when the project is further along.
Multiplayer is being tackled now so that the all the elements, such as interactive/dynamic elements in levels and enemy AI work properly with a multiplayer system. However once the architecture is in place the primary focus will be single player until it is complete.
When the merger build is released both basic no-frills deathmatch and coop. will be supported with additional modes and features added later. In addition all the levels will be available for preview in single player as well as at least one weapon and one enemy complete. After this large XL Merger build is complete I plan on releasing a build either weekly or bi-weekly (depending on time) until all the features are complete. The upcoming build also marks the addition of Linux and Mac OS X support to the XL Engine.
There are a variety of additional plans beyond basic support - such as completing the build-in level editor started with DarkXL (complete with in-game previewing and editing) and other tools. I can talk about these plans at a future date when the project is further along.

- wangho
- Well Done
- Posts: 1217
- Joined: Oct 31st, 2006, 06:30
- Location: Over here, over there, yonder, aways, sometimes nowhere.
Re: XL Engine Merger and BloodXL Update
I like people that gets shit done
- Blood of Nightmares
- Well Done
- Posts: 1675
- Joined: May 10th, 2005, 23:17
- Location: The Accurate Hall of Epiphany
Re: XL Engine Merger and BloodXL Update
Is it possible to add entirely new enemies, weapons, items, etc without replacing the original sprites?
Re: XL Engine Merger and BloodXL Update
Yes you can using the scripting system.Blood of Nightmares wrote:Is it possible to add entirely new enemies, weapons, items, etc without replacing the original sprites?
- Blood of Nightmares
- Well Done
- Posts: 1675
- Joined: May 10th, 2005, 23:17
- Location: The Accurate Hall of Epiphany
Re: XL Engine Merger and BloodXL Update
That great news...luciusDXL wrote:Yes you can using the scripting system.Blood of Nightmares wrote:Is it possible to add entirely new enemies, weapons, items, etc without replacing the original sprites?
Although I've been wondering who would be making the new monsters/weapons/etc or most likely who would be editing the existing sprites to create something new with it? Looks like I'll be looking forward to this project next to C2G. Blood needs to be kept alive and running along with the classic FPS games not forgotten.
I Also wonder if you got a forum and if so I wonder if there's people in your community who is interested modding Blood using the XL Engine? Since we only have mappers here but not sprite artists though (which most of them can be found in the Doom community especially ZDoom forums).
Re: XL Engine Merger and BloodXL Update
I do have a website, blog, wiki and forums. To check it out go to: xlengine.com. You can see the links to the blog and forums on the website. The wiki needs some cleanup due to spambots and more work but I'll be dealing with that once the merger release is done.
Re: XL Engine Merger and BloodXL Update
I haven't updated here in a while but I've been making steady progress towards the merger release (which will include the first release of BloodXL).
Lately I've been knee-deep in network code, I'll post a copy of the update I made on the XL Engine forums below.
Until I can figure out where to host a lobby/master server - you'll need to do port forwarding to setup an XL Engine server. For intial testing I'll just keep the server running on my laptop, so people don't need to worry about that for now.
I've been working on the networking model - basically client/server with "co-simulation" but ultimately server authoritative.
Basically it means that the client immediately reacts to inputs and actions and sends key presses, mouse movements and other input up to the server with timestamps. The server performs the exact same simulation, re-winding player positions and such when using certain types of weapons and then sends the client what it's state should be. If the client and server state become out of sync then the client state is corrected using interpolation to smooth it out (unless it is severe - popping may occur in this case).
The idea is to make the game feel latency free (as much as possible) but still correcting as needed. Since the game update/physics time step is fixed, replaying a command stream will generate deterministic results - meaning the server and client will come up with the same answer most of the time.
So you get twitch gameplay, accurate weapons and still be cheat resistant due to server authoritative simulation.
As a side note, even though game updates and physics run at a fixed timestep rendering does not. In-between states are generated by interpolating gamestate and physics.
Lately I've been knee-deep in network code, I'll post a copy of the update I made on the XL Engine forums below.
Until I can figure out where to host a lobby/master server - you'll need to do port forwarding to setup an XL Engine server. For intial testing I'll just keep the server running on my laptop, so people don't need to worry about that for now.
I've been working on the networking model - basically client/server with "co-simulation" but ultimately server authoritative.
Basically it means that the client immediately reacts to inputs and actions and sends key presses, mouse movements and other input up to the server with timestamps. The server performs the exact same simulation, re-winding player positions and such when using certain types of weapons and then sends the client what it's state should be. If the client and server state become out of sync then the client state is corrected using interpolation to smooth it out (unless it is severe - popping may occur in this case).
The idea is to make the game feel latency free (as much as possible) but still correcting as needed. Since the game update/physics time step is fixed, replaying a command stream will generate deterministic results - meaning the server and client will come up with the same answer most of the time.
So you get twitch gameplay, accurate weapons and still be cheat resistant due to server authoritative simulation.
As a side note, even though game updates and physics run at a fixed timestep rendering does not. In-between states are generated by interpolating gamestate and physics.
Re: XL Engine Merger and BloodXL Update
This might be consequential to your side note: the Build engine uses an internal clock to determine various speeds and it runs at 30 tics per second. Some sources say it should be 26, but apparently it is 30. Rendering speed (frames per second) does not affect the execution of mechanics.
Raven wrote:Nevermore.
Re: XL Engine Merger and BloodXL Update
That 26 vs 30 thing is only for Duke3D; the internal Build engine timer is actually 120Hz (and there's no question whether that figure is accurate or not).
Re: XL Engine Merger and BloodXL Update
I've posted a new update on the XL Engine merger. I've already talked about the networking so I'll just post the parts relevant to BloodXL here:
Level Interactivity
I’ve been moving over the INF system from DarkXL and making it more general to support BloodXL, OutlawsXL and DaggerXL. INF is essentially a system for controlling the interactive elements of levels, such as doors, elevators, dynamic sector lighting, scrolling textures, switches and so on. The result is a system where these elements can be built in code or script.
The DarkXL functionality will basically just transfer over. In BloodXL most of the level interactivity necessary for the first level (and much for the following levels as well) is now complete. Things like sliding doors, rotating doors, elevators, flickering lights, opening gates and more are working as you’ll see in the video below.
In order to get this to work properly using the original data, almost all of the Xtra data has been decoded and implemented.
I’m getting very close to holding the first multiplayer tests and then getting the merger build finally released!
BloodXL – A First Look
I’ve decided to post a video showing the current state of BloodXL. The game is running in “Bloodbath” mode, which basically means that all the Bloodbath weapons and items show up but that enemies are not represented. Note that this is still early work in progress and there are still numerous issues that need to be ironed out. However, hopefully you’ll agree, that BloodXL is progressing well and is nearly ready for the release.
(Note that Youtube didn't do a great job with the video, so I'm updating another version that will hopefully be higher quality. When it is finished I'll just change the link)
Click here to see the video in HD.
Level Interactivity
I’ve been moving over the INF system from DarkXL and making it more general to support BloodXL, OutlawsXL and DaggerXL. INF is essentially a system for controlling the interactive elements of levels, such as doors, elevators, dynamic sector lighting, scrolling textures, switches and so on. The result is a system where these elements can be built in code or script.
The DarkXL functionality will basically just transfer over. In BloodXL most of the level interactivity necessary for the first level (and much for the following levels as well) is now complete. Things like sliding doors, rotating doors, elevators, flickering lights, opening gates and more are working as you’ll see in the video below.
In order to get this to work properly using the original data, almost all of the Xtra data has been decoded and implemented.
I’m getting very close to holding the first multiplayer tests and then getting the merger build finally released!
BloodXL – A First Look
I’ve decided to post a video showing the current state of BloodXL. The game is running in “Bloodbath” mode, which basically means that all the Bloodbath weapons and items show up but that enemies are not represented. Note that this is still early work in progress and there are still numerous issues that need to be ironed out. However, hopefully you’ll agree, that BloodXL is progressing well and is nearly ready for the release.
(Note that Youtube didn't do a great job with the video, so I'm updating another version that will hopefully be higher quality. When it is finished I'll just change the link)
Click here to see the video in HD.
Re: XL Engine Merger and BloodXL Update
Looking pretty cool but kind of weird with the voxels missing.
"I'm here to donate some blood...someone else's..." - Caleb


Re: XL Engine Merger and BloodXL Update
The voxel models will be in before the release. I already have code to render them, I just have to put in the code to load them for the appropriate sprites.