News | Forum | People | FAQ | Links | Search | Register | Log in
Updated Q1SP MOD - Arcane Dimensions 1.7.1 *PATCHED*
Sock has been beavering away behind the scenes to get a fully updated tweaked fixed and finalised version of AD. So here it is. One point SEVEN.

Download (220mb):
http://www.simonoc.com/files/ad/ad_v1_70final.zip

V1.7.1 Patch (see recent post below):
http://www.simonoc.com/files/ad/ad_v1_70patch1.zip


Readme:
http://www.simonoc.com/files/ad/ad_v1_70_readme.txt

Recommended Quakespasm 0.93:
http://quakespasm.sourceforge.net/download.htm

Past versions etc:
http://www.simonoc.com/pages/design/sp/ad.htm

In his own words:
"The AD zip file is getting a bit big and inconvenient to download and I think its time to start splitting stuff off into separate files. The AD map source files are not needed or viewed much and if anyone wants to see them, just drop me an email request.

This download contains all the previous maps, some new extra code and features, lots of bug fixes, some new mapper features (check documentation) and as a final bonus, a couple of extra maps hidden away in the main map hubs, good hunting!"


Screenshots:
http://www.simonoc.com/files/ad/ad_17_finish1.jpg
http://www.simonoc.com/files/ad/ad_17_finish2.jpg
http://www.simonoc.com/files/ad/ad_17_finish3.jpg
http://www.simonoc.com/files/ad/ad_17_finish4.jpg
First | Previous | Next | Last
AD On Finnish Game Magazine 
I discovered recently that AD was featured in the March 2018 issue of Pelit, (probably) the largest game magazine in the Nordic countries! :D

Brace yourselves as I reminisce: Back in the day, before the days of the Internet, I used to read the magazine a lot in the elementary school (1995-2001) library when I was a wee lad. But as Internet became more widespread, and I grew up, there was a long time I hadn't read the magazine at all.

But once I graduated in 2014 and got a stable job, I picked up reading the magazine once again. And I noticed some of the journalists in the magazine were still around as in the nineties, so there's a lot of oldschool flair in the magazine, with a lot of love for old or retro games.

Some highlights from the article:

"Arcane Dimensions is Quake as it's painted in our memories. The building blocks are largely the same but the action has been beefed up and the architecture is from another world."

"The culmination of the mod is Forgotten Sepulcher. Despite the size everything is thought out and detailed."

"20 years of practice in map design has produced fruit, the seed of which id Software probably didn't realize it had sown."

"I was enchanted by AD from the first bite."

After a brief description of his run of Foggy Bogbottom the author states: "Not every map of the mod is an epic like that of Foggy Bogbottom, but it sums up what AD is at its best: feeling the map, horror, action, exploration, pacing, replayability, a little bit of everything."

(The author seems to like large open maps with exploration with side paths and backtracking.)

"The Triforce of speed, avoidable projectiles, and ever surrounding punishment shines bright"

"The game keeps you on your toes."

"The maps in AD are spiky Rubik's cubes that occasionally lock in places to show something, but are often just skillfully intertwined geometry, art for the sake of art. They evoke a lot of images, but often slip to the realm of the incomprehensible, which since the days of Lovecraft has been a good setting for a nightmarish feeling."

"Quake Champions has shiny graphics and polish, but in attitude AD dominates. Rough is beatiful."

The author states how many of the maps draw inspiration from FPS games throughout the ages and states: "AD is Quake with two decades worth of experience. A map pack, which makes the id maps look like preschooler tinkering. Not that the folks at id were bad at the time but knowhow has simply just increased since then."

"Subjectively I have an unhealthy fixation with the Quake framework. Objectively AD is one of the best things that people have done with the framework."

Screenshot of the article with the text hidden to respect the text copyright:

http://www.quaketastic.com/files/AD_Pelit_jpg.jpg

The text at the beginning says:

"AN ANCIENT GOD AWAKENS

In capable hands certain games just keep getting better over the decades. One of them is Quake." 
Thanks Esrael 
Seeing this is very humbling and exciting at the same time, I feel honoured to have contributed to this mod. :) 
Thx! 
Very nice to read this. 
#632 
Only skimmed what u wrote and that's great :) 
 
Sock also just retweeted a blog article by the same author, more about "pixel graphics" in general rather than only talking about AD: https://twitter.com/SimsOCallaghan/status/977864228118941697 
Quakespasm Not Full AD Experience? 
Hi,
Im running the later Quakespasm on a mac and looking at this video: https://www.youtube.com/watch?v=K8JWgsz8-lQ

I think Im missing the rain and some "smoke trail" with the torches and grenades maybe.

Am I missing some configuration? Im running a very clean config with just a texture 2 change and some joystick (due to handicap).
Thanks 
@daemonix 
Regular Quakespasm does not have those effects. You need to run AD with "quakespasm-spike-admod.exe" to get those special effects. 
I Forgot The Link 
@damage_inc 
may the gibs be in your favour! 
#637 
So, sock himself is using QSS to play AD. This should be enough reason to switch to QSS over regular QS for playing this mod. 
@mfx 
How can I contact you with a question about one of your maps? 
#642 
maikfranzxaver -at- gmail -dot- com 
Thanks! 
 
@mankrip 
FYI... QSS != quakespasm-spike-admod 
Ad_e2m2 
has anyone managed to find all of the new 10 secret triggers in ad_e2m2? there used to be only 3 before it was updated in 1.70. After hours of not finding any new secrets i didn't recognize from 1.60 I noclipped around the entire map still and couldn't find the last 2 anywhere, which is kind of weird since there should be rooms of some kind for them, but there don't seem to be. is this a bug or am i just too stupid to see them? 
Ibueac 
nevermind, i'm stupid. 
Shoot The Boards 
Or was that for swampy. If you are having too much trouble, switch to an engine that supports drawing EVERYTHING when outside the level bounds...oh wait you can't because QS/QSS and QuakeDroid are the onlyones that support AD lol. 
Co-op 
is there any way to configure coop to work properly? it keeps dropping packets and a lot of things like bullets and particles aren't showing up on the client. 
 
The packet size limit of Quakespasm is fixed at compile time (DATAGRAM_MTU 1400), I've tried raising it to 32000 for testing coop and it worked OK, but routers/internet are not required to deliver large packets from what I understand.

try Quakespasm-Spike; it has a new network protocol which is supposed to be better for coop: http://triptohell.info/moodles/qss/ 
@ericw 
thanks, the datagram thing totally worked.
there's one weird quirk though, maybe you can tell me what causes it.

most maps load on client, but synchronization problems get really bad as they get bigger and water of any type is completely unrendered. sepulcher doesnt load at all on client, host says "sz_getspace: overflow" when client is trying to connect. adjusting r_wateralpha once on client makes the water reappear, performance is way better and sepulcher actually loads, but you have to do it every time after connecting. lava and portals seem to be unaffected by whatever is causing this. 
 
thanks, the datagram thing totally worked.
cool!

most maps load on client, but synchronization problems get really bad as they get bigger and water of any type is completely unrendered.
Not sure what's going on with the water, or synchronization problems in general (could be packets are being dropped).

Turning off AD's particles ("temp1 0" in ad/quake.rc) is a good idea because each one is an entity and they generate a lot of network traffic.
I think if you use QS-Spike they no longer use entities, but I'm not 100% sure.

sz_getspace: overflow - This is the "signon buffer overflowed" message. Not sure why it would show up in coop but not singleplayer, maybe there is some extra info that gets sent in coop for some reason.

Quakespasm-spike should have this limit removed entirely so that would be what I would recommend trying next. So what made the "sz_getspace: overflow" error go away again, wouldn't just be changing the r_wateralpha cvar on the client? 
 
i made a mistake. i tested it at least a dozen times and it always worked after adjusting it, and never when i didn't. but apparently that was just coincidence.

once i tried connecting 3 times in a row without changing anything and it actually connected on the third, but i haven't been able to replicate that again and now it either connects first try or never until i restart everything. then i was sure it was related to connection quality, since it seemed to always work on a wired connection and only sometimes on wireless and there was a huge difference in network performance, but then it eventually refused to connect on a wired connection aswell, with the same overflow error.

i also don't really understand whats going on with the water, there are 3 different scenarios for the client. either it is completely invisible, but if you check r_wateralpha it has a value that should be visible. sometimes it is totally opaque and r_wateralpha reflects that accurately with a 1, and other times it simply carries over the value from the previously loaded map. sepulcher is supposed to have 0.6, and start has 0.65, so the client will sometimes have 0.65 while the host has 0.6 when i changed the level after connecting.

i tried spikes version but that has the exact same problem, only worse for some reason. it happens for much smaller maps like magna at a rate comparable to sepulcher in regular quakespasm with the limit removed.

can the signon buffer size be increased as easily as the packet size limit? i'd like to test that in my quakespasm build to see if it makes a difference. 
Sz_getspace: Overflow 
With QSS as a server, set sv_gameplayfix_spawnbeforethinks 1. This prevents PlayerPreThink etc getting called on player entities that have not actually been spawned yet, thereby preventing AD from spamming at the worst possible time.
You should then be able to connect just fine, every time.

However, I fucked up such that the above cvar doesn't do its job on map changes. Reconnecting will work fine until the next map change, thankfully most AD maps have shotgun starts so this shouldn't be too annoying beyond the hassle of it.

@sock
the overflow comes from spammed v_cshift stuffcmds (somewhere inside PlayerPostThink) to players that haven't even been ClientConnected yet, this then overflows the waiting signon data.
Normally I'd say its just an engine bug, but it goes all the way back to vanilla (so applies to more than just QS[S]) and the general policy is to not break other mods that actually depend on weird legacy behaviour (hence the gameplayfix cvar defaulting to 0). 
@Spike @sock 
the overflow comes from spammed v_cshift stuffcmds (somewhere inside PlayerPostThink) to players that haven't even been ClientConnected yet,

It looks like like it's coming from this ResetDebuffSystem() call (the internals of that do the stuffcmd unconditionally.)

//----------------------------------------------------------------------
// Core debuff function, run every frame from client.qc
//----------------------------------------------------------------------
void() ClientDeBuff =
{
// If player is dead or intermission running, turn everything off
if (intermission_running > 0 || self.health < 1) {
ResetDebuffSystem(self);
return;
}


Probably adding a (self.flags & FL_CLIENT) check should do the trick? 
@ericw @Spike 
yup, totally does the trick.

thanks for the help, both of you :) 
Elevators 
why are some of them so janky and others just fine? most of them you clip into a little bit like the two in start, very few are completely fine like the first on tfuma, and others are really bad making you jump up and down like the second one on crucial. 
Speeds And Clip Brushes 
First, make sure you aren't playing with max fps set higher than 72 (60 might be more consistent). Quake has a long standing physics bug that isn't framerate dependent.

The clipping might have to do with making a func_plat that also includes clip brushes. Some elevators have invisible brushes to make them into a solid rectangular box so players don't get trapped under the lip and get their heads bonked. 
 
A "smooth out stair step ups" engine change may also resolve this. In view.c: https://github.com/id-Software/Quake/blob/master/WinQuake/view.c

Change "oldz += steptime * 80;" to "oldz += steptime * 160;" and a lot of elevator jankiness goes away.

This change is in Bengt Jardrup's engine, but what's not clear is how he knew to make the change nor where he got the figure of 160 from. 
 
Elevators (and ramps) that are inside a trigger_fog or other trigger that does a stuffcmd every frame defeats the movement smoothing.

I debugged it a bit and cl.onground was getting set to false after each stuffcmd, which disabled the smoothing, but I didn't track down how cl.onground is linked to the stuffcmd-ing. Quakespasm-Spike's new protocol avoids this, but I'm not sure what change is responsible. Do you know what's going on, Spike?

test cases:

jittery:

temp1 0 # enable the stuffcmds inside trigger_fog
map ad_swampy.bsp
notarget
setpos -67 1368 840
noclip


smooth:

temp1 2048 #this disables the stuffcmds inside trigger_fog
map ad_swampy.bsp
notarget
setpos -67 1368 840
noclip


you need to walk off the plat and step back on. Look at the floor (plat surface) to see the jittering. You might have to ride the elevator a few times to see it jitter, but the "smooth" case is always smooth. 
 
Ok, did a bit more debugging (quakespasm / protocol 666), and it seems the client gets a net message with just svc_stufftext, and no svc_clientdata. onground gets set to false on every received network message unless there is svc_clientdata in it, so that is how the stuffcmd causes the stairstep smoothing to be reset. Not sure about the bigger picture like why does PF_stuffcmd result in a standalone net message without a svc_clientdata?

I guess the best solution assuming qc changes would be to use fitzquake's built in fog interpolation over time, which would avoid spamming the network with fog changes. 
@661 
svc_clientdata is normally present in every single _unreliable_ packet (the exception being nop packets).
Unlike Quakeworld, in NQ all reliable data (like stuffcmds) is sent in separate packets. hence why you're getting a packet that contains only a stuffcmd. This is true even for DPP7 and QSS.

There really is nothing specific to stuffcmd here. there are many other ways to trigger small reliables without svc_clientdatas.


FTE/QSS's network protocol considers the onground flag to be part of entity state, and doesn't even use svc_clientdata any more.
I don't recall any particular reason why you can't just do similar, and set/clear it only on reception of svc_clientdata (and CL_ClearState). I probably ought to do just that in QSS. Flagging the player as offground can affect things like bobbing, but its better to make sure any such unwanted effects are disabled by map changes, pause, or whatever, instead of potentially breaking on random reliables. 
Thanks Again Everyone 
i changed it to 160 and it's smooth as butter now.

completely unrelated, my save file somehow got corrupted in the most bizarre way i have ever seen. all the detail prop models have been shuffled. lit candles are now shell boxes, unlit candles are fire, and fire is a health kit. the zombie knights are invisible except for their swords which attack you without any sort of animation, and the shadow axe is duplicated and doesn't disappear when picked up. everything goes back to normal when you change level or restart.

would be super impressed if someone could explain how this might have happened. have a look at it yourself if you're curious, there's even more weird shit like the fire that gets abducted into the ceiling immediately.

https://drive.google.com/open?id=1jFNJH3Z84DfK56GrWRFpNpm1sqHBJWQx 
Edict List Offset By 1 
Quake stores all the models in an edict list on map load (or was it game start, whatever). If you load a saved game in a different mod or different version, the edict list could be different amd thus the referenced model for each object is off from where it should be in the list. 
@662 
Thanks! That explains everything. set/clearing cl.onground only on reception of svc_clientdata sounds like a reasonable change. 
@664 
it has nothing to do with edicts.
its the model indexes. precaching models in a different order can and will result in the model indexes referring to different models.

there are all sorts of ways to trigger the issue, from updating a mod or map between saving+loading, to mods that just use non-deterministic precaches such that they all get renumbered on reload.
If the mod ever uses random() in order to decide which model to precache then the mod is buggy.

FTE+DP+QSS are meant to write out the precache list so that it can be restored properly afterwards, which should allow non-deterministic mods to reload games properly.
Don't expect to be able to fix the game by just loading your existing save with one of those engines - if the saved game doesn't include the data then it'll have to be made up somehow - which means guessed, which means buggy. 
First | Previous | Next | Last
Post A Reply:
Name:
Title:
Body:
message
question
exclamation
idea
flame
noflame
error
skull
beer
moon
pent
rocket
sheep
pacman
pig
cheese
worldcraft
gauntlet
crate
pitfall
pimp
smile
cool
sad
frown
oi
yay
tongue
evil
wink
neutral
q1
q2
q3
ut
hl
cs
doom
dkt
serious
cube
Website copyright © 2002-2017 John Fitzgibbons. All posts are copyright their respective authors.