Rage through 32 single player levels and 6 deathmatch levels of sheer terror and fully immersive sound and lighting. Arm yourself against the cannibalistic Ogre, fiendish Vore and indestructible Schambler using lethal nails, fierce Thunderbolts and abominable Rocket and Grenade Launchers.

  • View media
  • View media
  • View media
  • View media
  • View media
  • View media
Post article RSS Related Articles

March 28: Loadgame Menu Finalized (Zircon Beta #42 - Win64, 41 Linux)

Finalized the loadgame menu that uses savegame screenshots embedded within savegames (these savegames are compatible with every modern engine including Quakespasm and derivatives and DarkPlaces).

loadg

The internal wiring was something I had to continually work on, not so much for the savegame process or even the menu, but rather that DarkPlaces Beta which Zircon Beta is based on, did not have the code completed for dynamic textures (textures that can change).

Doing this correctly also means that video restart, gamedir change and a number of other things need handled because DarkPlaces more completely changes game directory than vanilla Quake engines do -- it is more similar to a partial engine restart.

So quite a bit of deep coding to get this A+++.

Zircon Release 43 is basically done, after some final checks and testing it will be out, probably tomorrow.

March 27: A Compatibility Investigation

While trying finalize the new save game menu (optional) that contains screenshots, loaded a save that occurred on E1M1. I go in water near secret Mega Health, and there there is a lift to the green armor, I already did this in the save game so this is the 2nd visit.

I hear a beep (talk.wav) at the top of the lift to the green armor, there is no centerprint message.

Zircon has enhanced investigation tools, I type "developer_stuffcmd 1" and repeat the above gameplay. I see that I am getting a centerprint. It is a zero-length string.

I load up Quakespasm. Load the DarkPlaces save game. I still get the beep.

I start up E1M1 fresh in Quakespasm, I go through the secret area twice.

NO BEEP.

I look at the QuakeC for id1 progs, I see that after a secret is triggered .. it sets self.message = "".

It checks if (self.message) to decide to do centerprint or not in the QuakeC and if it does, it will also do the "talk.wav".

I check the DarkPlaces VM opcodes -- fortunately the DarkPlaces developers put some comments from Spike in that section.

From the perspective of the DarkPlaces engine, that self.message that is "" is an existing message that happens to be a zero-length string. (This is my current interpretation of what I am seeing).

DarkPlaces: if (self.message) where self.message is "", my guess is that this evaluates as true.
Quakespasm: if (self.message) where self.message is "", I imagine this evaluates as false.

But is this guessed different behavior due to the OP code or where the string is set to ""?

DarkPlaces has string handling that is incredible, but this is an example of some subtle behavior differences.

In the future at some point, Zircon will have a compatibility mode that eliminates this type of thing as a problem. In fact, I did a test when I added protocol 999 to the engine.

The easiest way to solve this is put a Quakespasm VM inside Zircon as an option. If I recall, this is about 200 KB bytes. The main reason Zircon does not already have this is that I would need to do a lot of wiring up the networking to do it right.

March 26: JPEG Stream

Added the ability to play video also via a "JPEG stream". Wanted a final no-dependencies option for video that does not impose color palette limitation.

Trying to wrap everything up and might have some sort of playable single player demo to go along with it.

March 25: Very Easy Video Cutscenes

It was quite a bit of work writing a streaming GIF decoder, but the next Zircon can easily play animated gifs from the console via "playvideo yourgif.gif". Combined with "play video/yoursound.wav", this is a simple and very portable way to be able to include video cut-scenes in a mod.

I want the option of being able to put small video cut-scenes easily in a mod.

"playvideo blue.gif"

playgif

(blue.gif is in the quake\id1\video folder)


Although I successfully completed the .dpv video support in Zircon Beta -- in DarkPlaces Beta that feature was incomplete and not easy to do with their new rendering system -- the DarkPlaces Video format (.dpv) requires a lot of work to make the files.

This animated gif decoder makes everything a breeze and animated GIFs are everywhere and it is super easy to convert mp4 to animated GIF with a click or a drag-drop.

I had a huge head start in writing the streaming GIF decoder due to the fine work of the github lecram/gifdec project, however it was written to read from disk (very slow) and was written to decode every frame entirely. I tore into it and eliminated those inefficiencies and then added a stream-query decode based off video time and snaps in with the DarkPlaces video playback system already in-place.

Note that DarkPlaces also has a captioning system available and some scaling and fade options.

Eventually, it is possible that Zircon will .mp4 or similar.

March 24: Animated GIF Support

Getting DarkPlaces Video (.dpv) fully implemented was important.

However, after some thinking, I decided to add animated GIF support as an additional optional "video format". The project at Github.com made this rather straightforward (that code is exceptionally well written).

On another note: I found this incredible project at GitHub called Windows Defender Remover .. Github.com ... Windows Defender had been turning itself back on regularly and spinning itself up and chewing up my CPU and otherwise being super-annoying .. I tried that Github release .. and Windows Defender is now no longer on my Windows 10 machine (take that!).

Animated GIF

The tools to make and precisely edit animated GIF are in abundance and incredible, I use them all the time and some great software like ShareX (the free video capture application for Windows) can record your screen as animated GIF (if you don't want .mp4 for some reason) and converting mp4 to animated GIF is easy.

Supporting Animated GIF in Zircon has proved to be easy and it is lightweight requiring no extra DLLs or libraries making it super-portable for in the future when I take the time to make Zircon Beta compile for platforms like Mac/Android (like what Zircon Alpha already has).

March 23: DarkPlaces Video

DarkPlaces has had a form of video playback for a long-time. In DarkPlaces Beta, the support for DarkPlaces Video Playback was not completely implemented with the new rendering system. (Zircon Beta is based off DarkPlaces Beta.)

The next Zircon Beta release will have DarkPlaces (.dpv) playback working.

vidvid

The above animation wouldn't be the one I would choose, but during testing I just took the first one I found and used it for the test in engine coding. This was a harder battle than expected, I thought it was going to be a medium-sized battle, but eventually I learned why this feature was incomplete -- with the new rendering system, most of the old code simply was incompatible.

March 21: Construction Time

Save game with screenshot preview is getting close to done. It is great! I will never want to use the old "Load Games" menu again, and I am very excited to be renovating this part of the engine.

(The "old" Load Game menu will remain an option.)

dozer


The DarkPlaces codebase has grown on me over time. When I first started modifying DarkPlaces, I found the source code very difficult to work with compared with traditional Quake engine source codes. The source code does have a certain percent that is written perhaps a little in a style I feel is hard to read (I rewrite that!)

But overall, I like the style of thinking found in the source code and I think the source code on a whole is incredible. Major learning curve at first, but I find working with it a pleasure and every once in a while something clicks and discover a brilliant line of thinking by LadyHavoc or one of the other major codebase authors.

Working with the Load Game, I discovered some nice hidden gems and philosophies in the DarkPlaces source code.

I look forward to finishing the Load Game menu. There are some other ideas that have come to light!

Not The First!

This will not be the first Quake engine to show screenshots of save games, the DirectQ engine had such a feature and actually loaded the map and rendered it. It was remembering that feature of DirectQ that prompted this idea.

March 21: Save Games Menu Upgrade

The save / load game menu in Zircon is getting an upgrade to include screenshots and how old the save game is. The save games displayed in the save game menu will also be from the current game directory only and will also include any saves made in the console.

shotty

Zircon will soon embed compressed 512 x 320 screenshots in save game files for enhanced load game menu.


DarkPlaces, FTE, Quakespasm and engines based off Quakespasm will ignore the extra data (this is effectively all Quake engines).

When I am looking to load a save game, I want to be able to see where I am in a map and know how old the save game is.

March 20: Blender OBJ Adjustment

Wanted to add some "level of detail" model support into Zircon. DarkPlaces excels at loading .obj models and I found some "dungeon themed" models I wanted to do level of detail testing with.

Level of detail support means using low polygon count alternate models with different distance cutoffs to render faster and more efficiently and use the higher polygon count models only when close enough for a player to experience the detail.

Blender exports to OBJ, however, I want to center the models and Noesis (a free model converter and an awesome one at that) has -recenter as an export option .. right?

braz

Well, I noticed that if I import OBJ into Noesis and then recenter or scale, the resulting OBJ has

  • More vertexes
  • More triangles

This doubling or tripling of the vertexes and triangles defeats the purpose of my level of detail model experiments, so I have added a new command in Zircon to perform this recentering/rescaling task so I can do this without Noesis. (The command is "objmodeladjust" and "objmodeladjust models/medieval/dungeon_torch.obj 20" will center the obj model and scaling increase by a factor of 20).

TODO: Send an email to Rich Whitehouse, the author of Noesis and let him know about this.

March 18: Underwater Sound Effect Muffle / EffectInfo Commands

intermap demo dm3x

Zircon Beta Release #42: Hemebond added snd_waterfx 1 to DarkPlaces Beta which muffles sound underwater, now has been added to Zircon and it is also in the effects menu after waterwarp. New commands: effectinfo_list will list effectsinfo.txt effects and effectinfo_dump will print the text of an effect to the console. Other changes, see readme.

So now Zircon can display effectinfo text and print Q3 .shader text for a texture along with tool_inspector 1 and showtex 1 to see the texture names. This gives Zircon the ability to examine almost anything about a map or mod and, if developing a map, to more easily be able to change it. (And with the "pak_this_map" command, makes the packaging of dependencies of a complex Q3 map into a single command).

Pictured: Map "Park"

Park is the start map of the Intermap Travel Demo (Challenge #1 of 20). It is a Quake 3 map format map has numerous textures and those textures have shaders -- the map is far more complex than, say, a Q1 map.

challenge4

Taking such a map and reducing it to it's actual dependencies -- which although I didn't count, is likely hundreds of textures files and text snippets of several different.shader files --- would take a serious effort by a human.

"pak_this_map" command reduced it to dependencies and copied needed contents into a single folder in 0.12 seconds.

With all .shader text required place in a single text file.

Reduce it to a command once, benefit forever! Let machines do machine work, they do it fast!

March 16: Linux Binary Now Available (Zircon Beta #41 - Win64 / Linux)

2024 Quake Omega Effects Challenge Series #1 of 20

Download: Intermap Travel Demo Version 1

Download: Zircon Beta Release #41 (Updated πŸ”₯)

The Intermap Travel Demo takes what worked great in previous DarkPlaces works and then cranks the dial to 99999 before smashing the controls with a hammer and then blowing up the building!

It is a relentless single player campaign for Quake using the Zircon Engine (Release #41 or higher) ...

challenge3 challenge4


Open Source

The Intermap Travel Demo is open source, the QuakeC source code and .map sources are included with the release.

chal chalb


The Intermap Travel Demo hits hard non-stop again and again, you have to escape the base in 22 minutes in a visual delight.

challenge1 challenge2


chalshow


The ending packs an Easter Egg callback to Nehahra.

Zero Ping Movement Version 1 (Quake Re-Release Support Improved)

Zero Ping Movement Version 1 (Quake Re-Release Support Improved)

Zircon Engine - a "DarkPlaces Mark V" project 2 comments

Discussion of Zero Ping Movement Version 1 -- this is a movement mode available in Zircon that allows smooth gameplay with incredibly bad connections...

Blood + Iron v2 Preview

Blood + Iron v2 Preview

Blood + Iron 6 comments

Over the last few weeks I've been hard at work with version 2.0 of Blood + Iron.

December Lab Report #12 of 12 - Journey Onward

December Lab Report #12 of 12 - Journey Onward

Zircon Engine - a "DarkPlaces Mark V" project

The Year Of Our Lord 2024. A discussion of probable upcoming topics. The age of engine stabilization has come to a close, a shift towards using the engine...

December Lab Report #11 of 12 - The Future, Embracing The Past

December Lab Report #11 of 12 - The Future, Embracing The Past

Zircon Engine - a "DarkPlaces Mark V" project 4 comments

Zircon now supports protocol 666 and 999, giving it the ability to play demos recorded in Quakespasm, connect to a Quakespasm coop game or host a game...

Add file RSS Related Files
Zircon Beta engine source 20240328 WIP

Zircon Beta engine source 20240328 WIP

Zircon Engine - a "DarkPlaces Mark V" project Source Code

Mostly completed, but unrefined source code for a future release with screenshot preview load game menu, jpeg stream support, gif decoding and many other...

Zircon Beta engine source 20240325 WIP

Zircon Beta engine source 20240325 WIP

Zircon Engine - a "DarkPlaces Mark V" project Source Code

Mostly completed, but unrefined source code for a future release with gif decoding and many other features. The code needs cleanup.

rum.dpv.zip -- a DarkPlaces .dpv test video

rum.dpv.zip -- a DarkPlaces .dpv test video

Zircon Engine - a "DarkPlaces Mark V" project Other

For testing. This is a test .dpv video that goes into quak\id1\videos and can be played in Classic DarkPlaces (2014 version) with "playvideo rum". It...

Launcher script which automatically sets display scaling to 100%

Launcher script which automatically sets display scaling to 100%

Quake 1.5 HD SP beta 1 Script

If you are experiencing any sort of video problems and you normally use 125% display scaling, you can try this batch file to launch the game. It will...

J.A.C.K. - vpQuake3x64.dll (.obj, .ogg)

J.A.C.K. - vpQuake3x64.dll (.obj, .ogg)

Zircon Engine - a "DarkPlaces Mark V" project Mapping Tool

Support for .obj and .ogg in J.A.C.K. dialogs for Quake 3 only. This file goes in C:\Program Files\J.A.C.K\plugins replacing vpQuake3x64.dll -- the model...

Zircon Beta Release #42 πŸ”₯ (Win64 binary, source)

Zircon Beta Release #42 πŸ”₯ (Win64 binary, source)

Zircon Engine - a "DarkPlaces Mark V" project Full Version

"snd_waterfx 1" from DarkPlaces Beta, muffles sound underwater (it is in the effects menu after waterwarp, "snd_waterfx 0" disables.) New commands effectinfo_list...

Post comment Comments  (0 - 10 of 125)
PsyWarVeteran
PsyWarVeteran

After many years I returned to Quake and have been playing both the main game and the expansions on Nightmare, I'm almost finished. Great experience, pretty fair too, whatever you shoot stays down unlike DooM.

Reply Good karma Bad karma+4 votes
vm773542
vm773542

Π˜Π·Π²Π΅Π½ΠΈΡ‚Π΅ Ρ‡Ρ‚ΠΎ Ρ‚Ρ€Π΅Π²ΠΎΠΆΡƒ Π½ΠΎ подскаТитС ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ Π΅Ρ‚ΠΈ ΠΌΠΎΠ΄Ρ‹ Π½Π° ΠΈΠ³Ρ€Ρƒ Quake?? Π‘ΠΎ Π½Π° ΠΈΠ³Ρ€Ρƒ half life ΠΊΠ°ΠΊΡ‚ΠΎ ΠΏΡ€ΠΎΡ‰Π΅????

Reply Good karma Bad karma+2 votes
Guest
Guest

Π—Π°ΠΊΠΈΠ½ΡŒ Π² ΠΊΠΎΡ€Π½Π΅Π²ΡƒΡŽ ΠΏΠ°ΠΏΠΊΡƒ ΠΈΠ³Ρ€Ρ‹ ΠΌΠΎΠ΄ (Π½Π΅ ID1, Π° ΠΊΠΎΡ€Π½Π΅Π²ΡƒΡŽ), Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ "Copper". Запусти ΠΈΠ³Ρ€Ρƒ ΠΈ Π² консоли "~" (ΠΈΠ»ΠΈ Ё) Π½Π°Π±Π΅Ρ€ΠΈ "game copper". Π˜Π³Ρ€Π° ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡΡ Π½Π° ΠΌΠΎΠ΄. А ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ bat-Ρ„Π°ΠΉΠ» ΠΈ Π² Π½Π΅ΠΌ ΠΏΡ€ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ "quakespasm-spiked-win64.exe -game copper" ΠΈ ΠΈΠ³Ρ€Π° запустится сразу с ΠΌΠΎΠ΄ΠΎΠΌ.

Reply Good karma Bad karma+2 votes
SweetRamona
SweetRamona

OMG! The Creators of Arcane Dimensions are making a commercial FPS Game rrunning on the Quake Engine/idTech 1 Engine! 😺

And it's being published by 3D Realms! 😻

Reply Good karma Bad karma+9 votes
dumptruck_ds
dumptruck_ds

This has nothing to do with Arcane Dimensions.

Reply Good karma Bad karma+12 votes
SweetRamona
SweetRamona

Uhh yes it does, BloodShot is one of the level designers for this.

Reply Good karma Bad karma+2 votes
mukor
mukor

Hello, i am a level designer on Wrath and I wanna second what dumptruck said above. BloodShot was not on the AD team and we only ever had one(1) AD dev on the team. That individual has since taken a leave on the project so as it stands, no AD devs are working on Wrath. Hope this clears up some confusion.

Reply Good karma Bad karma+7 votes
SweetRamona
SweetRamona

DAMN! You're right my mistake, I dunno why I said BloodShot was involved with Wrath since he had no involvement on AD as you said.

Sorry for the misinformation, I must've been tired as hell when I wrote that. >.>

Reply Good karma Bad karma+3 votes
SweetRamona
SweetRamona

Aaaand it's out! 😺

Store.steampowered.com
Gog.com

Reply Good karma Bad karma+3 votes
wampa-stompa
wampa-stompa

no it isn't.

Reply Good karma Bad karma+1 vote
GoreTech5
GoreTech5

Awesome!

Reply Good karma Bad karma+4 votes
Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account:

X