Giter VIP home page Giter VIP logo

igeniai / q-zandronum Goto Github PK

View Code? Open in Web Editor NEW
68.0 68.0 8.0 39.47 MB

A Zandronum 3.0 fork with improved netcode, configurable movement and many small tweaks

License: Other

CMake 0.54% C 22.34% Objective-C 0.05% C++ 75.66% HTML 0.29% NSIS 0.01% Makefile 0.01% Python 0.28% Assembly 0.41% Objective-C++ 0.05% Yacc 0.07% TeX 0.01% Lex 0.03% Roff 0.13% Batchfile 0.03% PostScript 0.02% GLSL 0.07% SWIG 0.02%
doom gameplay skulltag zandronum

q-zandronum's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

q-zandronum's Issues

Fix windows scaling

<@Torr_Samaho>: IIRC code that uses window flags is in src\win32\i_system.cpp

Code cleanup #1

This is a ticket where we mark code that can be safely removed

cl_pred.cpp

void P_MovePlayer (player_t *player, ticcmd_t *cmd);
void P_CalcHeight (player_t *player);
void P_DeathThink (player_t *player);
bool P_AdjustFloorCeil (AActor *thing);

Looks like this is some legacy that is not used at all and just wasn't removed.

p_user.cpp

// else if ( player->pSkullBot )
// {
// Printf( "WARNING! Bot %s dead and not hitting repawn in state %s!\n", player->userinfo.GetName(), player->pSkullBot->m_ScriptData.szStateName[player->pSkullBot->m_ScriptData.lCurrentStateIdx] );
// }

/* [BB] For some reason Skulltag does this a little differently above. Todo: Unify this, to make merging ZDoom updates easier.
if ((player->cmd.ucmd.buttons & BT_USE ||
((multiplayer || alwaysapplydmflags) && (dmflags & DF_FORCE_RESPAWN))) && !(dmflags2 & DF2_NO_RESPAWN))
{
if (level.time >= player->respawn_time || ((player->cmd.ucmd.buttons & BT_USE) && !player->isbot))
{
player->cls = NULL; // Force a new class if the player is using a random class
player->playerstate = (multiplayer || (level.flags2 & LEVEL2_ALLOWRESPAWN)) ? PST_REBORN : PST_ENTER;
if (player->mo->special1 > 2)
{
player->mo->special1 = 0;
}
}
}
*/

/*
if (debugfile && !(player->cheats & CF_PREDICTING))
{
fprintf (debugfile, "tic %d for pl %td: (%d, %d, %d, %u) b:%02x p:%d y:%d f:%d s:%d u:%d\n",
gametic, player-players, player->mo->x, player->mo->y, player->mo->z,
player->mo->angle>>ANGLETOFINESHIFT, player->cmd.ucmd.buttons,
player->cmd.ucmd.pitch, player->cmd.ucmd.yaw, player->cmd.ucmd.forwardmove,
player->cmd.ucmd.sidemove, player->cmd.ucmd.upmove);
}
*/

/*
void P_PredictPlayer (player_t *player)
{
int maxtic;
...

/*
void P_UnPredictPlayer ()
{
player_t *player = &players[consoleplayer];
...

Fix TODOs whereever possible

Multiple TODOs across the engine code

// [EP] TODO: remove the 'l' prefix from this variable, it isn't LONG anymore
// [EP] TODO: remove the 'ul' prefix from this variable, it isn't ULONG anymore

The SXF_TRANSFERPITCH flag on A_SpawnItemEx doesn't seem to transfer the pitch of a consecutive spawned actor online

for example if i spawned a missile "MissileX" using A_SpawnItemEx and SXF_TRANSFERPITCH and it spawns another missile "MissileY" using the same parameters it is supposed to move along the same pitch as MissileX

But it only does that offline and the functionality just breaks online, where MissileX correctly inherits the player's pitch but MissileY seems to fail to inherit MissileX's pitch, instead having just a straight default pitch of 0

Mouse doesn't work in "shotgun frenzy plus" mod

Can't check it with a screenshot, as I could litterally just not move the mouse and spoof it
But can be checked by using the Shotgun Frenzy+ (see sfplus in static allfearthesentinel), choosing Shotgun Frenzy as the episode/mode, then entering the Commander terminal (in the building at your view's left)

2021-04-14_16-13-55.mp4

Add a "ring out" tracking, QC-like way

If in a PVP mode
If incoming damage from falling, nukage or instant death pit is about to result in a player's death
If player had damage dealt to them by another player in the last 100 tics
Reattribute the incoming killing damage to that previous damager

Implement some kind of a hub server for duels.

When people join the server, they don't play matches on it, but instead select an opponent and then the server redirects them to another server where they actually play. After the game is finished, they come back to the hub.

OpenDoor() doesn't work in Megaman training map when in offline skirmish

[2:16] Ecl1p5e: https://cutstuff.net/mm8bdm/
you would first going to want to download the mod from here
[2:16] Ecl1p5e: then navigate to New Game > Offline Skirmish > Set map to TRAINING and start the game
[2:17] Ecl1p5e: spawn a bot using addbot and step into the platform, navigate using movement keys to the Confirmation button and teleport inside the training room
[2:18] Ecl1p5e: Here, the music will change the moment you teleport inside. Kill the bot inside with your weapon and see if the music resets back to what it was before. The door should open as soon as the music changes
[2:18] Ecl1p5e: in base zandro, this works as intended with no issues, not depending on whether the player started the map from the in-game campaign or offline skirmish
[2:18] Ecl1p5e: in qzan, the music changes but the door does not open

controlled 0 duration loops in DECORATE

controlled 0 duration loops in DECORATE cause Warning: Breaking infinite loop in actor X. Current offset from spawn state is Y. error on clients

In DECORATE

  TNT1 A 0 Do stuff
  TNT1 A 0 Do more stuff
  TNT1 A 0 SetUserVar("userloop",userloop + 1)
  TNT1 A 0 A_JumpIf("user_loop" == 10,1)
  Goto StateLoop/Loop
  TNT1 A Do even more stuff```

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.