#3608 posted by
Proto on 2025/07/07 04:07:52
Does anyone know how the movement code is delt with? There's nothing obvious where "forward moves the player" anywhere in the Alkaline mod code base 🤔 I've heard it's supposed to be in pmove.qc but there isn't one. Is that somewhere else in the engine or something? I feel like I'm missing something

Correct Suspicions
#3609 posted by
Preach on 2025/07/08 21:58:12
Your guess is correct. There really is a file called pmove.c in the QuakeWorld source:
https://github.com/id-Software/Quake/blob/master/QW/client/pmove.c
The equivalent in the regular Quake engine is here:
https://github.com/id-Software/Quake/blob/master/WinQuake/sv_phys.c
This means that if you want to change how the player moves from within QuakeC, you have to work around what the engine is automatically doing on the player's behalf.

Hooking Up To Run Key
#3610 posted by
ranger on 2025/07/11 19:28:58
what exactly do i need to do to make the game execute an action when cl_movespeedkey/+speed is pressed?
#3611 posted by
ranger on 2025/07/11 19:30:05
for example, while running it will spawn particles behind the player for 5sec

See Above
#3612 posted by
Preach on 2025/07/12 23:34:44
The previous post about player movement physics is immediately relevant again. The engine does nearly all the work of turning the player inputs into movement. The only part that's delegated to the QuakeC is how to respond to a jump command. And like the directional keys, +speed is not communicated to the QuakeC because it isn't necessary to make the movement work.
The same advice applies, you need to try and work around what the engine does on your behalf. Consider whether you can infer whether the player is running based on things that QuakeC can observe e.g. velocity, on-ground status, position. The PlayerPostThink function is the earliest opportunity as it runs right after engine physics.
You might find in practice checking the velocity is preferable. If the player is holding the run key but their attempted movement is blocked by a wall, should the particles spawn? Probably not!

No Spawn Function For Custom Trigger
#3613 posted by
Valentine on 2026/02/24 22:01:43
I created my own trigger called "trigger_allplayers", aded it to the FGD file
@SolidClass base(Targetname) = trigger_allplayers : "All Players Trigger"
[
map(string) : "Next map to load when all players are inside"
]
...and added in a test map.
Then I wrote code for it in triggers.qc, compiled progs.dat and ran in Quake. When I start the map I get this error:
No spawn function for:
EDICT 7:
classname trigger_allplayers
model *1
I double-checked the function name. Everything seems correct. What am I missing?
#3614 posted by
oglerau on 2026/02/24 22:14:04
Is triggers.qc inside progs.src? What was the name of your fuction?
Should be something like this: void() trigger_allplayers = { // ... };
#3615 posted by
Valentine on 2026/02/24 22:33:37
Yes, triggers.qc is in progs.src. It's compiled. I renamed it to xxx_triggers_allplayers and then opened the compiled progs.dat and found the new name inside.
The source code for the function:
void() trigger_allplayers =
{
InitTrigger();
self.think = trigger_allplayers_think;
self.nextthink = time + 0.5;
};
#3616 posted by
metlslime on 2026/02/25 00:58:16
Is it possible that quake isn’t loading the progs.dat you expect? For example, a progs.dat ouside a pak file won’t override a progs.dat inside a pak file in the same mod folder.

Mod
#3617 posted by
Preach on 2026/02/25 01:01:33
Are you sure the map is being launched with your mod being selected via -game your_mod_name? Can you make some other change in the mod that will be really obvious, like setting starting health to 200?
If the command line for the mod is correct but the mod still isn't loading, run the checklist to be sure is that your progs.dat file is being used. Make sure that it's in the root directory of your mod, and that there are no .pak files in the mod directory which also have progs.dat in them (files in a pak will take priority over unpacked files).