diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000..9a9e28548 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +ÿþ.vs/ +.vs/ diff --git a/README.md b/README.md new file mode 100644 index 000000000..7809389a9 --- /dev/null +++ b/README.md @@ -0,0 +1,77 @@ + +# Quake 2 Assassins Creed Mod + +This mod takes some features from the game franchise Assassins Creed and implements them into the game Quake 2. These features include the some stealth and movement mechanics, as well as weapons and tools used in many of the games. + + +## Authors + +- [@Frokey17](https://www.github.com/Frokey17) + + +## How To Play + +1. Go to my git hub account which should be linked in Authors +2. Click on quake2-mod and then click on the branch named ac_mod +3. Download or extract the mod folder and implement it as a new folder into your Quake 2 file +4. Launch Quake 2 and then in the console type "set game " +5. Start a new game and enjoy + + + +## Features + +- Weapons + - Blaster + - Fires an invisble projectile at close range + - Tweaked damage + - BFG + - Can only be fired when the play isn't moving + - Tweaked projectile speed + - Grenande Launcher + - Now shoots mutiple grenades at once which explode in short intervals + - Causes enemies to lose player agro for 8 seconds + - No longer does damage + - Shotgun + - Now produces particles when fired + - Tweaked spread + - Super Shotgun + - Now produces particles when fired + - Tweaked spread + - Hyperblaster + - Zooms in player screen when held and unzooms when not + - No longer fires any projectiles + - Hand Grenande + - Causes enemies to lose player agro for 3 seconds + - No longer does damage + - Tweaked timer + - Machine Gun + - Now shoots accuratly + - Projectiles fired now do damage over time + - Tweaked firerate + - Tweaked damage + - Chain Gun + - Now shoots accuratly + - Projectiles now freeze enemies in place and make them lose player agro + - Tweaked firerate + - Railgun + - Projectiles now teleport enemies in front of the player + - Tweaked damage + - Tweaked kick +- Stealth Mechanics + - Added code to the enemy AI so that they lose agro on the player if the player is crouching or in water +- Movement Mechanics + - Removed the ground check on jumping so that the player can infinitely jump even in mid air, allowing them to wall climb + - Added code so that if the player is moving into a wall while falling, their fall speed is decreased by half, allowing them to wall run. +- Commands + - ModHelp + - Shows a help screen with fixes to common issues + - Gives instructions on how to get to HelpWeapons and HelpMove + - HelpWeapons + - Shows a help screen with fixes to weapon problems and reccomended ways to use them. + - Gives instructions on how to get to ModHelp + - HelpMove + - Shows a help screen with fixes to stealth and movement problems, as well as reccomended ways to use them + - Gives instructions on how to get to ModHelp + + diff --git a/ctf/ctf.vcxproj b/ctf/ctf.vcxproj index e47b04e86..df382e387 100644 --- a/ctf/ctf.vcxproj +++ b/ctf/ctf.vcxproj @@ -26,22 +26,22 @@ DynamicLibrary - v142 + v143 false DynamicLibrary - v142 + v143 false DynamicLibrary - v142 + v143 false DynamicLibrary - v142 + v143 false diff --git a/g_acmelee.h b/g_acmelee.h new file mode 100644 index 000000000..e69de29bb diff --git a/game/g_acmelee.h b/game/g_acmelee.h new file mode 100644 index 000000000..e4d0b2bdc --- /dev/null +++ b/game/g_acmelee.h @@ -0,0 +1,109 @@ +/* + * sword variable definitions, I have this here because the sword is most likely still unbalanced + * I know this because I killed a super tank with it without taking ANY damaga + */ +#define SWORD_NORMAL_DAMAGE 100 +#define SWORD_DEATHMATCH_DAMAGE 150 +#define SWORD_KICK 500 + +/* +=========== +fire_sword +=========== +*/ +void fire_sword(edict_t* self, vec3_t start, vec3_t aimdir, int damage, int kick) +{ + //You may recognize a lot of this from the fire lead command, which + //is the one that I understood best what the hell was going on + + trace_t tr; //Not entirely sure what this is, I know that it is used + //to trace out the route of the weapon being used...gotta limit it + + vec3_t dir; //Another point I am unclear about + vec3_t forward; //maybe someday I will know a little bit + vec3_t right; //better about what these are + vec3_t up; + vec3_t end; + + tr = gi.trace(self->s.origin, NULL, NULL, start, self, MASK_SHOT); + + if (!(tr.fraction < 1.0)) //I can only assume this has something to do + //with the progress of the trace + { + vectoangles(aimdir, dir); + AngleVectors(dir, forward, right, up); //possibly sets some of the angle vectors + //as standards? + + VectorMA(start, 8192, forward, end); //This does some extension of the vector... + //note how short I have this attack going + } + + //The fire_lead had an awful lot of stuff in here dealing with the effect of the shot + //upon water and whatnot, but a sword doesn't make you worry about that sort of stuff + //thats why highlanders are so damn cool. + + if (!((tr.surface) && (tr.surface->flags & SURF_SKY))) + { + if (tr.fraction < 1.0) + { + if (tr.ent->takedamage) + { + //This tells us to damage the thing that in our path...hehehehegit + T_Damage(tr.ent, self, self, aimdir, tr.endpos, tr.plane.normal, damage, kick, 0, 1); + } + else + { + if (strncmp(tr.surface->name, "sky", 3) != 0) + { + gi.WriteByte(svc_temp_entity); + gi.WriteByte(TE_GUNSHOT); + gi.WritePosition(tr.endpos); + gi.WriteDir(tr.plane.normal); + gi.multicast(tr.endpos, MULTICAST_PVS); + + if (self->client) + PlayerNoise(self, tr.endpos, PNOISE_IMPACT); + } + } + } + } + return; +} + +void sword_attack(edict_t* ent, vec3_t g_offset, int damage) +{ + vec3_t forward, right; + vec3_t start; + vec3_t offset; + + if (is_quad) + damage *= 4; + AngleVectors(ent->client->v_angle, forward, right, NULL); + VectorSet(offset, 24, 8, ent->viewheight - 8); + VectorAdd(offset, g_offset, offset); + P_ProjectSource(ent->client, ent->s.origin, offset, forward, right, start); + + VectorScale(forward, -2, ent->client->kick_origin); + ent->client->kick_angles[0] = -1; + + fire_sword(ent, start, forward, damage, SWORD_KICK); +} + +void Weapon_Sword_Fire(edict_t* ent) +{ + int damage; + if (deathmatch->value) + damage = SWORD_DEATHMATCH_DAMAGE; + else + damage = SWORD_NORMAL_DAMAGE; + sword_attack(ent, vec3_origin, damage); + ent->client->ps.gunframe++; +} + +void Weapon_Sword (edict_t *ent) +{ + static int pause_frames[] = {19, 32, 0}; + static int fire_frames[] = {5, 0}; + + Weapon_Generic (ent, 4, 8, 52, 55, pause_frames, fire_frames, Weapon_Sword_Fire); +} diff --git a/game/g_ai.c b/game/g_ai.c index c5ea318e6..ce3408cfd 100644 --- a/game/g_ai.c +++ b/game/g_ai.c @@ -773,6 +773,27 @@ qboolean ai_checkattack (edict_t *self, float dist) vec3_t temp; qboolean hesDeadJim; + if (self->enemy && self->enemy->client && (self->enemy->flags & FL_NOTARGET)) + { + self->enemy = NULL; + self->oldenemy = NULL; + self->monsterinfo.stand(self); + return false; + } + + if (self->enemy && self->enemy->client) { + + if (self->enemy->client->ps.pmove.pm_flags & PMF_DUCKED) { + self->monsterinfo.stand(self); + return false; + } + + if (self->enemy->waterlevel > 0) { + self->monsterinfo.stand(self); + return false; + } + } + // this causes monsters to run blindly to the combat point w/o firing if (self->goalentity) { diff --git a/game/g_cmds.c b/game/g_cmds.c index 412c2a61c..44920f4e3 100644 --- a/game/g_cmds.c +++ b/game/g_cmds.c @@ -899,6 +899,51 @@ void Cmd_PlayerList_f(edict_t *ent) gi.cprintf(ent, PRINT_HIGH, "%s", text); } +//new commands +void Cmd_ModHelp_f(edict_t* ent) { + gi.cprintf(ent, PRINT_HIGH, + "===Common Problems===\n"); + gi.cprintf(ent, PRINT_HIGH, + "Game might freeze for a little when first using the mods\n"); + gi.cprintf(ent, PRINT_HIGH, + "Dont use rocket launcher or starter pistol since they were just used to test if mod would compile\n"); + gi.cprintf(ent, PRINT_HIGH, + "If enemies are stuck frozen just damage them to make them move again\n"); + gi.cprintf(ent, PRINT_HIGH, + "For more info on weapons type HelpWeapons\n"); + gi.cprintf(ent, PRINT_HIGH, + "For more info on stealth and movement type HelpMove\n"); +} + +void Cmd_HelpWeapons_f(edict_t* ent) { + gi.cprintf(ent, PRINT_HIGH, + "===Weapons===\n"); + gi.cprintf(ent, PRINT_HIGH, + "Ten weapons including the grenade have been changed to match weapons/tools from the game franchise Assassins Creed\n"); + gi.cprintf(ent, PRINT_HIGH, + "To use your dagger switch weapons with / as it doesnt't have a dedicated button\n"); + gi.cprintf(ent, PRINT_HIGH, + "For more detailed info on how each weapon was changed please look at the README file on my GitHub repository\n"); + gi.cprintf(ent, PRINT_HIGH, + "To return to original help screen type ModHelp\n"); +} + +void Cmd_HelpMove_f(edict_t* ent) { + gi.cprintf(ent, PRINT_HIGH, + "===Stealth and Movement===\n"); + gi.cprintf(ent, PRINT_HIGH, + "You can now avoid enemy agro by crouching or going into water\n"); + gi.cprintf(ent, PRINT_HIGH, + "You also now have two new movement abilities, infinite jump and wall run\n"); + gi.cprintf(ent, PRINT_HIGH, + "Infinite jump allows you to continously jump even in mid air, used to simulate climbing from Assassins Creed\n"); + gi.cprintf(ent, PRINT_HIGH, + "Wall run allows you to now basically stick on move on walls, allowing for more movement options\n"); + gi.cprintf(ent, PRINT_HIGH, + "To return to original help screen type ModHelp\n"); +} +//End of new commands + /* ================= @@ -987,6 +1032,13 @@ void ClientCommand (edict_t *ent) Cmd_Wave_f (ent); else if (Q_stricmp(cmd, "playerlist") == 0) Cmd_PlayerList_f(ent); + //new commands + else if (Q_stricmp(cmd, "ModHelp") == 0) + Cmd_ModHelp_f(ent); + else if (Q_stricmp(cmd, "HelpWeapons") == 0) + Cmd_HelpWeapons_f(ent); + else if (Q_stricmp(cmd, "HelpMove") == 0) + Cmd_HelpMove_f(ent); else // anything that doesn't match a command will be a chat Cmd_Say_f (ent, false, true); } diff --git a/game/g_items.c b/game/g_items.c index e81e835ed..09d5332b0 100644 --- a/game/g_items.c +++ b/game/g_items.c @@ -36,6 +36,9 @@ void Weapon_GrenadeLauncher (edict_t *ent); void Weapon_Railgun (edict_t *ent); void Weapon_BFG (edict_t *ent); +/* new stuff for the sword */ +void Weapon_Sword(edict_t* ent); + gitem_armor_t jacketarmor_info = { 25, 50, .30, .00, ARMOR_JACKET}; gitem_armor_t combatarmor_info = { 50, 100, .60, .30, ARMOR_COMBAT}; gitem_armor_t bodyarmor_info = {100, 200, .80, .60, ARMOR_BODY}; @@ -1539,6 +1542,29 @@ always owned, never in the world /* precache */ "sprites/s_bfg1.sp2 sprites/s_bfg2.sp2 sprites/s_bfg3.sp2 weapons/bfg__f1y.wav weapons/bfg__l1a.wav weapons/bfg__x1b.wav weapons/bfg_hum.wav" }, + /* weapon_sword*/ + { + "weapon_sword", + NULL, + Use_Weapon, //How to use + NULL, + Weapon_Sword, //What the function is + "misc/w_pkup.wav", + NULL, + 0, + "models/weapons/v_blast/tris.md2", //The models stuff + "w_blaster", //Icon to be used + "Sword", //Pickup name + 0, + 0, + NULL, + IT_WEAPON, + NULL, + 0, + "weapons/blastf1a.wav misc/lasfly.wav" //The sound of the blaster + //This is precached + }, + // // AMMO ITEMS // diff --git a/game/g_local.h b/game/g_local.h index 78605e59b..80aa24c95 100644 --- a/game/g_local.h +++ b/game/g_local.h @@ -1109,5 +1109,11 @@ struct edict_s // common data blocks moveinfo_t moveinfo; monsterinfo_t monsterinfo; + + //new for poison + float poison_time; + float poison_damage; + edict_t* poison_attacker; + float next_poison_tick; }; diff --git a/game/g_main.c b/game/g_main.c index d6c3c8875..8c7c5afeb 100644 --- a/game/g_main.c +++ b/game/g_main.c @@ -355,6 +355,22 @@ void G_RunFrame (void) int i; edict_t *ent; + //new for poison + for (ent = g_edicts + 1; ent < &g_edicts[globals.num_edicts]; ent++) + { + if (!ent->inuse) { + continue; + } + if (ent->poison_time > level.time) { + if (level.time >= ent->next_poison_tick) { + if (ent->takedamage && ent->health > 0) { + T_Damage(ent, ent->poison_attacker, ent->poison_attacker, vec3_origin, ent->s.origin, vec3_origin, ent->poison_damage, 0, 0, MOD_MACHINEGUN); + } + ent->next_poison_tick = level.time + 1.0; + } + } + } + level.framenum++; level.time = level.framenum*FRAMETIME; diff --git a/game/game.vcxproj b/game/game.vcxproj index 07f54e790..337d8b0b6 100644 --- a/game/game.vcxproj +++ b/game/game.vcxproj @@ -31,26 +31,26 @@ Application - v142 + v143 DynamicLibrary - v142 + v143 false DynamicLibrary - v142 + v143 false DynamicLibrary - v142 + v143 false DynamicLibrary - v142 + v143 false @@ -85,7 +85,7 @@ .\release\ false gamex86 - .\release + ..\..\..\..\Program Files %28x86%29\Steam\steamapps\common\Quake 2\magic .\..\ReleaseAXP\ @@ -465,6 +465,7 @@ + diff --git a/game/game.vcxproj.user b/game/game.vcxproj.user new file mode 100644 index 000000000..88a550947 --- /dev/null +++ b/game/game.vcxproj.user @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/game/p_client.c b/game/p_client.c index 80e444d2f..e7fde2706 100644 --- a/game/p_client.c +++ b/game/p_client.c @@ -610,6 +610,11 @@ void InitClientPersistant (gclient_t *client) memset (&client->pers, 0, sizeof(client->pers)); + /* new stuff for sword */ + item = FindItem("Sword"); + client->pers.inventory[ITEM_INDEX(item)] = 1; + /* end new stuff for sword */ + item = FindItem("Blaster"); client->pers.selected_item = ITEM_INDEX(item); client->pers.inventory[client->pers.selected_item] = 1; @@ -1649,10 +1654,26 @@ void ClientThink (edict_t *ent, usercmd_t *ucmd) client->resp.cmd_angles[1] = SHORT2ANGLE(ucmd->angles[1]); client->resp.cmd_angles[2] = SHORT2ANGLE(ucmd->angles[2]); - if (ent->groundentity && !pm.groundentity && (pm.cmd.upmove >= 10) && (pm.waterlevel == 0)) + if ((pm.cmd.upmove >= 10) && (pm.waterlevel == 0)) { gi.sound(ent, CHAN_VOICE, gi.soundindex("*jump1.wav"), 1, ATTN_NORM, 0); PlayerNoise(ent, ent->s.origin, PNOISE_SELF); + ent->velocity[2] = 300; + } + + if (!pm.groundentity && pm.waterlevel == 0) { + trace_t trace; + vec3_t check, forward; + + AngleVectors(pm.viewangles, forward, NULL, NULL); + VectorMA(ent->s.origin, 36, forward, check); + trace = gi.trace(ent->s.origin, ent->mins, ent->maxs, check, ent, MASK_PLAYERSOLID); + + if (trace.fraction < 1.0f && fabs(trace.plane.normal[2]) < 0.7f) { + if (ent->velocity[2] < 0) { + ent->velocity[2] *= 0.5f; + } + } } ent->viewheight = pm.viewheight; diff --git a/game/p_view.c b/game/p_view.c index 04ba7c6a6..e21d2b13c 100644 --- a/game/p_view.c +++ b/game/p_view.c @@ -963,6 +963,11 @@ void ClientEndServerFrame (edict_t *ent) current_player = ent; current_client = ent->client; + // new stuff for smoke + if ((ent->flags & FL_NOTARGET) && (level.time > ent->teleport_time)) { + ent->flags &= ~FL_NOTARGET; + } + // // If the origin or velocity have changed since ClientThink(), // update the pmove values. This will happen when the client diff --git a/game/p_weapon.c b/game/p_weapon.c index dc418f355..2e06b4914 100644 --- a/game/p_weapon.c +++ b/game/p_weapon.c @@ -552,6 +552,7 @@ void weapon_grenade_fire (edict_t *ent, qboolean held) float timer; int speed; float radius; + edict_t* check; radius = damage+40; if (is_quad) @@ -561,9 +562,9 @@ void weapon_grenade_fire (edict_t *ent, qboolean held) AngleVectors (ent->client->v_angle, forward, right, NULL); P_ProjectSource (ent->client, ent->s.origin, offset, forward, right, start); - timer = ent->client->grenade_time - level.time; + timer = ent->client->grenade_time - level.time - level.time; speed = GRENADE_MINSPEED + (GRENADE_TIMER - timer) * ((GRENADE_MAXSPEED - GRENADE_MINSPEED) / GRENADE_TIMER); - fire_grenade2 (ent, start, forward, damage, speed, timer, radius, held); + fire_grenade2 (ent, start, forward, 0, speed, timer, radius, held); if (! ( (int)dmflags->value & DF_INFINITE_AMMO ) ) ent->client->pers.inventory[ent->client->ammo_index]--; @@ -590,6 +591,26 @@ void weapon_grenade_fire (edict_t *ent, qboolean held) ent->s.frame = FRAME_wave08; ent->client->anim_end = FRAME_wave01; } + + //new for firecracker + ent->flags |= FL_NOTARGET; + ent->teleport_time = level.time + 3.0; + + for (check = g_edicts + 1; check < &g_edicts[globals.num_edicts]; check++) + { + if (!check->inuse) + continue; + + if (check->enemy == ent && check->monsterinfo.stand) + { + check->enemy = NULL; + check->oldenemy = NULL; + + if (check->monsterinfo.stand) { + check->monsterinfo.stand(check); + } + } + } } void Weapon_Grenade (edict_t *ent) @@ -713,6 +734,7 @@ void weapon_grenadelauncher_fire (edict_t *ent) vec3_t start; int damage = 120; float radius; + edict_t* check; radius = damage+40; if (is_quad) @@ -725,7 +747,31 @@ void weapon_grenadelauncher_fire (edict_t *ent) VectorScale (forward, -2, ent->client->kick_origin); ent->client->kick_angles[0] = -1; - fire_grenade (ent, start, forward, damage, 600, 2.5, radius); + fire_grenade (ent, start, forward, 0, 100, 0.3, 0); + fire_grenade(ent, start, forward, 0, 100, 0.5, 0); + fire_grenade(ent, start, forward, 0, 100, 0.7, 0); + fire_grenade(ent, start, forward, 0, 100, 0.9, 0); + fire_grenade(ent, start, forward, 0, 100, 1.1, 0); + fire_grenade(ent, start, forward, 0, 100, 1.3, 0); + + ent->flags |= FL_NOTARGET; + ent->teleport_time = level.time + 8.0; + + for (check = g_edicts + 1; check < &g_edicts[globals.num_edicts]; check++) + { + if (!check->inuse) + continue; + + if (check->enemy == ent && check->monsterinfo.stand) + { + check->enemy = NULL; + check->oldenemy = NULL; + + if (check->monsterinfo.stand) { + check->monsterinfo.stand(check); + } + } + } gi.WriteByte (svc_muzzleflash); gi.WriteShort (ent-g_edicts); @@ -829,7 +875,39 @@ void Blaster_Fire (edict_t *ent, vec3_t g_offset, int damage, qboolean hyper, in VectorScale (forward, -2, ent->client->kick_origin); ent->client->kick_angles[0] = -1; - fire_blaster (ent, start, forward, damage, 1000, effect, hyper); + fire_grenade(ent, start, forward, 100, 600, 2.5, 100); + + start[0] += right[0]; + start[1] += right[1]; + start[2] += right[2]; + forward[0] += right[0] * 0.2; + forward[1] += right[1] * 0.2; + forward[2] += right[2] * 0.2; + fire_grenade(ent, start, forward, 100, 600, 2.5, 100); + + start[0] += right[0]; + start[1] += right[1]; + start[2] += right[2]; + forward[0] += right[0] * 0.2; + forward[1] += right[1] * 0.2; + forward[2] += right[2] * 0.2; + fire_grenade(ent, start, forward, 100, 600, 2.5, 100); + + start[0] -= right[0] * 2; + start[1] -= right[1] * 2; + start[2] -= right[2] * 2; + forward[0] -= right[0] * 0.6; + forward[1] -= right[1] * 0.6; + forward[2] -= right[2] * 0.6; + fire_grenade(ent, start, forward, 100, 600, 2.5, 100); + + start[0] -= right[0] * 3; + start[1] -= right[1] * 3; + start[2] -= right[2] * 3; + forward[0] -= right[0] * 0.2; + forward[1] -= right[1] * 0.2; + forward[2] -= right[2] * 0.2; + fire_grenade(ent, start, forward, 100, 600, 2.5, 100); // send muzzle flash gi.WriteByte (svc_muzzleflash); @@ -865,65 +943,51 @@ void Weapon_Blaster (edict_t *ent) } -void Weapon_HyperBlaster_Fire (edict_t *ent) -{ +void Weapon_HyperBlaster_Fire (edict_t *ent){ float rotation; vec3_t offset; int effect; - int damage; ent->client->weapon_sound = gi.soundindex("weapons/hyprbl1a.wav"); - if (!(ent->client->buttons & BUTTON_ATTACK)) - { + if (!(ent->client->buttons & BUTTON_ATTACK)){ ent->client->ps.gunframe++; + + ent->client->ps.fov = 90; } - else - { - if (! ent->client->pers.inventory[ent->client->ammo_index] ) + else{ + ent->client->ps.fov = 30; + + + rotation = (ent->client->ps.gunframe - 5) * 2 * M_PI / 6; + offset[0] = -4 * sin(rotation); + offset[1] = 0; + offset[2] = 4 * cos(rotation); + + if ((ent->client->ps.gunframe == 6) || (ent->client->ps.gunframe == 9)) { + effect = EF_HYPERBLASTER; + } + else { + effect = 0; + } + + ent->client->anim_priority = ANIM_ATTACK; + if (ent->client->ps.pmove.pm_flags & PMF_DUCKED) { - if (level.time >= ent->pain_debounce_time) - { - gi.sound(ent, CHAN_VOICE, gi.soundindex("weapons/noammo.wav"), 1, ATTN_NORM, 0); - ent->pain_debounce_time = level.time + 1; - } - NoAmmoWeaponChange (ent); + ent->s.frame = FRAME_crattak1 - 1; + ent->client->anim_end = FRAME_crattak9; } else { - rotation = (ent->client->ps.gunframe - 5) * 2*M_PI/6; - offset[0] = -4 * sin(rotation); - offset[1] = 0; - offset[2] = 4 * cos(rotation); - - if ((ent->client->ps.gunframe == 6) || (ent->client->ps.gunframe == 9)) - effect = EF_HYPERBLASTER; - else - effect = 0; - if (deathmatch->value) - damage = 15; - else - damage = 20; - Blaster_Fire (ent, offset, damage, true, effect); - if (! ( (int)dmflags->value & DF_INFINITE_AMMO ) ) - ent->client->pers.inventory[ent->client->ammo_index]--; - - ent->client->anim_priority = ANIM_ATTACK; - if (ent->client->ps.pmove.pm_flags & PMF_DUCKED) - { - ent->s.frame = FRAME_crattak1 - 1; - ent->client->anim_end = FRAME_crattak9; - } - else - { - ent->s.frame = FRAME_attack1 - 1; - ent->client->anim_end = FRAME_attack8; - } + ent->s.frame = FRAME_attack1 - 1; + ent->client->anim_end = FRAME_attack8; } ent->client->ps.gunframe++; - if (ent->client->ps.gunframe == 12 && ent->client->pers.inventory[ent->client->ammo_index]) + + if (ent->client->ps.gunframe == 12 && ent->client->pers.inventory[ent->client->ammo_index]) { ent->client->ps.gunframe = 6; + } } if (ent->client->ps.gunframe == 12) @@ -950,30 +1014,42 @@ MACHINEGUN / CHAINGUN ====================================================================== */ +//new for poison +void fire_poison_bullet(edict_t* self, vec3_t start, vec3_t dir, int damage, int kick, int hspread, int vspread, int mod) { + + fire_bullet(self, start, dir, damage, kick, hspread, vspread, mod); + + trace_t tr; + vec3_t end; + + VectorMA(start, 8192, dir, end); + tr = gi.trace(start, NULL, NULL, end, self, MASK_SHOT); + if (tr.fraction < 1.0 && tr.ent && tr.ent->takedamage) { + tr.ent->poison_time = level.time + 5.0; + tr.ent->poison_damage = 10; + tr.ent->poison_attacker = self; + tr.ent->next_poison_tick = level.time + 1.0; + } + +} + void Machinegun_Fire (edict_t *ent) { int i; vec3_t start; - vec3_t forward, right; + vec3_t forward, right, up; vec3_t angles; int damage = 8; int kick = 2; vec3_t offset; - if (!(ent->client->buttons & BUTTON_ATTACK)) - { + if (ent->client->ps.gunframe != 4) { ent->client->machinegun_shots = 0; ent->client->ps.gunframe++; return; } - if (ent->client->ps.gunframe == 5) - ent->client->ps.gunframe = 4; - else - ent->client->ps.gunframe = 5; - - if (ent->client->pers.inventory[ent->client->ammo_index] < 1) - { + if (ent->client->pers.inventory[ent->client->ammo_index] < 1){ ent->client->ps.gunframe = 6; if (level.time >= ent->pain_debounce_time) { @@ -1007,11 +1083,17 @@ void Machinegun_Fire (edict_t *ent) } // get start / end positions - VectorAdd (ent->client->v_angle, ent->client->kick_angles, angles); - AngleVectors (angles, forward, right, NULL); - VectorSet(offset, 0, 8, ent->viewheight-8); - P_ProjectSource (ent->client, ent->s.origin, offset, forward, right, start); - fire_bullet (ent, start, forward, damage, kick, DEFAULT_BULLET_HSPREAD, DEFAULT_BULLET_VSPREAD, MOD_MACHINEGUN); + AngleVectors (ent->client->v_angle, forward, right, up); + VectorSet(offset, 0, 0, ent->viewheight-8); + + VectorCopy(ent->s.origin, start); + start[2] += ent->viewheight; + VectorMA(start, offset[0], forward, start); + VectorMA(start, offset[1], right, start); + VectorMA(start, offset[2], up, start); + + //new for Poisen + fire_poison_bullet (ent, start, forward, damage, kick, 0, 0, MOD_MACHINEGUN); gi.WriteByte (svc_muzzleflash); gi.WriteShort (ent-g_edicts); @@ -1034,12 +1116,13 @@ void Machinegun_Fire (edict_t *ent) ent->s.frame = FRAME_attack1 - (int) (random()+0.25); ent->client->anim_end = FRAME_attack8; } + ent->client->ps.gunframe++; } void Weapon_Machinegun (edict_t *ent) { static int pause_frames[] = {23, 45, 0}; - static int fire_frames[] = {4, 5, 0}; + static int fire_frames[] = {4, 0}; Weapon_Generic (ent, 3, 5, 45, 49, pause_frames, fire_frames, Machinegun_Fire); } @@ -1050,19 +1133,94 @@ void Chaingun_Fire (edict_t *ent) int shots; vec3_t start; vec3_t forward, right, up; - float r, u; + vec3_t offset; int damage; int kick = 2; + vec3_t end; + trace_t tr; if (deathmatch->value) damage = 6; else damage = 8; - if (ent->client->ps.gunframe == 5) + if (ent->client->ps.gunframe == 5) { gi.sound(ent, CHAN_AUTO, gi.soundindex("weapons/chngnu1a.wav"), 1, ATTN_IDLE, 0); + shots = 1; + + if (ent->client->pers.inventory[ent->client->ammo_index] < shots) + shots = ent->client->pers.inventory[ent->client->ammo_index]; + + if (!shots) + { + if (level.time >= ent->pain_debounce_time) + { + gi.sound(ent, CHAN_VOICE, gi.soundindex("weapons/noammo.wav"), 1, ATTN_NORM, 0); + ent->pain_debounce_time = level.time + 1; + } + NoAmmoWeaponChange(ent); + return; + } + + if (is_quad) + { + damage *= 4; + kick *= 4; + } + + for (i = 0; i < 3; i++) + { + ent->client->kick_origin[i] = crandom() * 0.35; + ent->client->kick_angles[i] = crandom() * 0.7; + } + + for (i = 0; i < shots; i++) + { + // get start / end positions + AngleVectors(ent->client->v_angle, forward, right, up); + VectorSet(offset, 0, 0, ent->viewheight); + P_ProjectSource(ent->client, ent->s.origin, offset, forward, right, start); + + //new for sleep dart + VectorMA(start, 8192, forward, end); + tr = gi.trace(start, NULL, NULL, end, ent, MASK_SHOT); + + if (tr.fraction < 1.0 && tr.ent && tr.ent->takedamage) + { + if (!tr.ent->client && tr.ent->svflags & SVF_MONSTER) + { + tr.ent->monsterinfo.pausetime = level.time + 10.0; + VectorClear(tr.ent->velocity); + VectorClear(tr.ent->avelocity); + + tr.ent->monsterinfo.aiflags |= AI_STAND_GROUND; + tr.ent->monsterinfo.attack_finished = level.time + 10.0; + + if (tr.ent->monsterinfo.stand) { + tr.ent->monsterinfo.stand(tr.ent); + } + tr.ent->monsterinfo.run = NULL; + tr.ent->monsterinfo.walk = NULL; + } + } + + fire_bullet(ent, start, forward, damage, kick, 0, 0, MOD_CHAINGUN); + } + + // send muzzle flash + gi.WriteByte(svc_muzzleflash); + gi.WriteShort(ent - g_edicts); + gi.WriteByte((MZ_CHAINGUN1 + shots - 1) | is_silenced); + gi.multicast(ent->s.origin, MULTICAST_PVS); + + PlayerNoise(ent, start, PNOISE_WEAPON); + + if (!((int)dmflags->value & DF_INFINITE_AMMO)) + ent->client->pers.inventory[ent->client->ammo_index] -= shots; + } + if ((ent->client->ps.gunframe == 14) && !(ent->client->buttons & BUTTON_ATTACK)) { ent->client->ps.gunframe = 32; @@ -1100,74 +1258,13 @@ void Chaingun_Fire (edict_t *ent) ent->s.frame = FRAME_attack1 - (ent->client->ps.gunframe & 1); ent->client->anim_end = FRAME_attack8; } - - if (ent->client->ps.gunframe <= 9) - shots = 1; - else if (ent->client->ps.gunframe <= 14) - { - if (ent->client->buttons & BUTTON_ATTACK) - shots = 2; - else - shots = 1; - } - else - shots = 3; - - if (ent->client->pers.inventory[ent->client->ammo_index] < shots) - shots = ent->client->pers.inventory[ent->client->ammo_index]; - - if (!shots) - { - if (level.time >= ent->pain_debounce_time) - { - gi.sound(ent, CHAN_VOICE, gi.soundindex("weapons/noammo.wav"), 1, ATTN_NORM, 0); - ent->pain_debounce_time = level.time + 1; - } - NoAmmoWeaponChange (ent); - return; - } - - if (is_quad) - { - damage *= 4; - kick *= 4; - } - - for (i=0 ; i<3 ; i++) - { - ent->client->kick_origin[i] = crandom() * 0.35; - ent->client->kick_angles[i] = crandom() * 0.7; - } - - for (i=0 ; iclient->v_angle, forward, right, up); - r = 7 + crandom()*4; - u = crandom()*4; - VectorSet(offset, 0, r, u + ent->viewheight-8); - P_ProjectSource (ent->client, ent->s.origin, offset, forward, right, start); - - fire_bullet (ent, start, forward, damage, kick, DEFAULT_BULLET_HSPREAD, DEFAULT_BULLET_VSPREAD, MOD_CHAINGUN); - } - - // send muzzle flash - gi.WriteByte (svc_muzzleflash); - gi.WriteShort (ent-g_edicts); - gi.WriteByte ((MZ_CHAINGUN1 + shots - 1) | is_silenced); - gi.multicast (ent->s.origin, MULTICAST_PVS); - - PlayerNoise(ent, start, PNOISE_WEAPON); - - if (! ( (int)dmflags->value & DF_INFINITE_AMMO ) ) - ent->client->pers.inventory[ent->client->ammo_index] -= shots; } void Weapon_Chaingun (edict_t *ent) { static int pause_frames[] = {38, 43, 51, 61, 0}; - static int fire_frames[] = {5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 0}; + static int fire_frames[] = {5}; Weapon_Generic (ent, 4, 31, 61, 64, pause_frames, fire_frames, Chaingun_Fire); } @@ -1188,6 +1285,9 @@ void weapon_shotgun_fire (edict_t *ent) vec3_t offset; int damage = 4; int kick = 8; + //smoke + int i; + vec3_t dir, point, end; if (ent->client->ps.gunframe == 9) { @@ -1210,9 +1310,9 @@ void weapon_shotgun_fire (edict_t *ent) } if (deathmatch->value) - fire_shotgun (ent, start, forward, damage, kick, 500, 500, DEFAULT_DEATHMATCH_SHOTGUN_COUNT, MOD_SHOTGUN); + fire_shotgun (ent, start, forward, damage, kick, 100, 100, DEFAULT_DEATHMATCH_SHOTGUN_COUNT, MOD_SHOTGUN); else - fire_shotgun (ent, start, forward, damage, kick, 500, 500, DEFAULT_SHOTGUN_COUNT, MOD_SHOTGUN); + fire_shotgun (ent, start, forward, damage, kick, 100, 100, DEFAULT_SHOTGUN_COUNT, MOD_SHOTGUN); // send muzzle flash gi.WriteByte (svc_muzzleflash); @@ -1220,6 +1320,28 @@ void weapon_shotgun_fire (edict_t *ent) gi.WriteByte (MZ_SHOTGUN | is_silenced); gi.multicast (ent->s.origin, MULTICAST_PVS); + // smoke + for (i = 0; i < 50; i++) { + dir[0] = forward[0] + crandom() * 0.3; + dir[1] = forward[1] + crandom() * 0.3; + dir[2] = forward[2] + crandom() * 0.2; + VectorNormalize(dir); + + VectorMA(start, 8 + i * 2, forward, point); + + point[0] += crandom() * 4; + point[1] += crandom() * 4; + point[2] += crandom() * 3; + + VectorMA(point, 12 + random() * 20, dir, end); + + gi.WriteByte(svc_temp_entity); + gi.WriteByte(TE_BUBBLETRAIL); + gi.WritePosition(point); + gi.WritePosition(end); + gi.multicast(point, MULTICAST_PVS); + } + ent->client->ps.gunframe++; PlayerNoise(ent, start, PNOISE_WEAPON); @@ -1242,13 +1364,16 @@ void weapon_supershotgun_fire (edict_t *ent) vec3_t forward, right; vec3_t offset; vec3_t v; - int damage = 6; - int kick = 12; + int damage = 8; + int kick = 20; + //smoke + int i; + vec3_t dir, point, end; AngleVectors (ent->client->v_angle, forward, right, NULL); - VectorScale (forward, -2, ent->client->kick_origin); - ent->client->kick_angles[0] = -2; + VectorScale (forward, -5, ent->client->kick_origin); + ent->client->kick_angles[0] = -3; VectorSet(offset, 0, 8, ent->viewheight-8); P_ProjectSource (ent->client, ent->s.origin, offset, forward, right, start); @@ -1260,13 +1385,13 @@ void weapon_supershotgun_fire (edict_t *ent) } v[PITCH] = ent->client->v_angle[PITCH]; - v[YAW] = ent->client->v_angle[YAW] - 5; + v[YAW] = ent->client->v_angle[YAW] - 10; v[ROLL] = ent->client->v_angle[ROLL]; AngleVectors (v, forward, NULL, NULL); - fire_shotgun (ent, start, forward, damage, kick, DEFAULT_SHOTGUN_HSPREAD, DEFAULT_SHOTGUN_VSPREAD, DEFAULT_SSHOTGUN_COUNT/2, MOD_SSHOTGUN); + fire_shotgun (ent, start, forward, damage, kick, DEFAULT_SHOTGUN_HSPREAD * 2, DEFAULT_SHOTGUN_VSPREAD * 2, DEFAULT_SSHOTGUN_COUNT, MOD_SSHOTGUN); v[YAW] = ent->client->v_angle[YAW] + 5; AngleVectors (v, forward, NULL, NULL); - fire_shotgun (ent, start, forward, damage, kick, DEFAULT_SHOTGUN_HSPREAD, DEFAULT_SHOTGUN_VSPREAD, DEFAULT_SSHOTGUN_COUNT/2, MOD_SSHOTGUN); + fire_shotgun (ent, start, forward, damage / 2, kick / 2, DEFAULT_SHOTGUN_HSPREAD * 0.5, DEFAULT_SHOTGUN_VSPREAD * 0.5, DEFAULT_SSHOTGUN_COUNT/4, MOD_SSHOTGUN); // send muzzle flash gi.WriteByte (svc_muzzleflash); @@ -1274,6 +1399,28 @@ void weapon_supershotgun_fire (edict_t *ent) gi.WriteByte (MZ_SSHOTGUN | is_silenced); gi.multicast (ent->s.origin, MULTICAST_PVS); + // smoke + for (i = 0; i < 50; i++) { + dir[0] = forward[0] + crandom() * 0.3; + dir[1] = forward[1] + crandom() * 0.3; + dir[2] = forward[2] + crandom() * 0.2; + VectorNormalize(dir); + + VectorMA(start, 8 + i * 2, forward, point); + + point[0] += crandom() * 4; + point[1] += crandom() * 4; + point[2] += crandom() * 3; + + VectorMA(point, 12 + random() * 20, dir, end); + + gi.WriteByte(svc_temp_entity); + gi.WriteByte(TE_BUBBLETRAIL); + gi.WritePosition(point); + gi.WritePosition(end); + gi.multicast(point, MULTICAST_PVS); + } + ent->client->ps.gunframe++; PlayerNoise(ent, start, PNOISE_WEAPON); @@ -1302,10 +1449,13 @@ RAILGUN void weapon_railgun_fire (edict_t *ent) { vec3_t start; - vec3_t forward, right; + vec3_t forward, right, up; vec3_t offset; int damage; int kick; + vec3_t end; + trace_t tr; + edict_t* hit; if (deathmatch->value) { // normal damage is too extreme in dm @@ -1331,7 +1481,34 @@ void weapon_railgun_fire (edict_t *ent) VectorSet(offset, 0, 7, ent->viewheight-8); P_ProjectSource (ent->client, ent->s.origin, offset, forward, right, start); - fire_rail (ent, start, forward, damage, kick); + fire_rail (ent, start, forward, 0, 0); + + //new for ropedart + VectorMA(start, 8192, forward, end); + tr = gi.trace(start, NULL, NULL, end, ent, MASK_SHOT); + if (tr.fraction < 1.0 && tr.ent && tr.ent->takedamage) { + hit = tr.ent; + if (hit->svflags & SVF_MONSTER && !(hit->flags & FL_GODMODE)) { + vec3_t teleport_origin; + vec3_t forward_new; + trace_t tr2; + + VectorMA(ent->s.origin, 128, forward, teleport_origin); + teleport_origin[2] = ent->s.origin[2]; + VectorCopy(teleport_origin, end); + end[2] -= 8192; + tr2 = gi.trace(teleport_origin, hit->mins, hit->maxs, end, hit, MASK_SOLID); + + if (tr2.fraction < 1.0){ + VectorCopy(tr2.endpos, hit->s.origin); + hit->s.origin[2] += 1; + } + else{ + VectorCopy(teleport_origin, hit->s.origin); + } + hit->monsterinfo.pausetime = level.time + 2.0; + } + } // send muzzle flash gi.WriteByte (svc_muzzleflash); @@ -1371,6 +1548,12 @@ void weapon_bfg_fire (edict_t *ent) int damage; float damage_radius = 1000; + //new for cannon + if (VectorLength(ent->velocity) > 10.0) { + ent->client->ps.gunframe++; + return; + } + if (deathmatch->value) damage = 200; else @@ -1412,7 +1595,7 @@ void weapon_bfg_fire (edict_t *ent) VectorSet(offset, 8, 8, ent->viewheight-8); P_ProjectSource (ent->client, ent->s.origin, offset, forward, right, start); - fire_bfg (ent, start, forward, damage, 400, damage_radius); + fire_bfg (ent, start, forward, damage, 1000, damage_radius); ent->client->ps.gunframe++; @@ -1432,3 +1615,5 @@ void Weapon_BFG (edict_t *ent) //====================================================================== + +#include "g_acmelee.h" \ No newline at end of file diff --git a/game/release/g_ai.obj b/game/release/g_ai.obj new file mode 100644 index 000000000..b1eab8bdf Binary files /dev/null and b/game/release/g_ai.obj differ diff --git a/game/release/g_chase.obj b/game/release/g_chase.obj new file mode 100644 index 000000000..9a0c7bbff Binary files /dev/null and b/game/release/g_chase.obj differ diff --git a/game/release/g_cmds.obj b/game/release/g_cmds.obj new file mode 100644 index 000000000..121115651 Binary files /dev/null and b/game/release/g_cmds.obj differ diff --git a/game/release/g_combat.obj b/game/release/g_combat.obj new file mode 100644 index 000000000..6f9df2232 Binary files /dev/null and b/game/release/g_combat.obj differ diff --git a/game/release/g_func.obj b/game/release/g_func.obj new file mode 100644 index 000000000..d00326693 Binary files /dev/null and b/game/release/g_func.obj differ diff --git a/game/release/g_items.obj b/game/release/g_items.obj new file mode 100644 index 000000000..68a4b6c97 Binary files /dev/null and b/game/release/g_items.obj differ diff --git a/game/release/g_main.obj b/game/release/g_main.obj new file mode 100644 index 000000000..eb47b0768 Binary files /dev/null and b/game/release/g_main.obj differ diff --git a/game/release/g_misc.obj b/game/release/g_misc.obj new file mode 100644 index 000000000..b5b744203 Binary files /dev/null and b/game/release/g_misc.obj differ diff --git a/game/release/g_monster.obj b/game/release/g_monster.obj new file mode 100644 index 000000000..dc7750a8c Binary files /dev/null and b/game/release/g_monster.obj differ diff --git a/game/release/g_phys.obj b/game/release/g_phys.obj new file mode 100644 index 000000000..cfcf9e181 Binary files /dev/null and b/game/release/g_phys.obj differ diff --git a/game/release/g_save.obj b/game/release/g_save.obj new file mode 100644 index 000000000..aaa4ffd34 Binary files /dev/null and b/game/release/g_save.obj differ diff --git a/game/release/g_spawn.obj b/game/release/g_spawn.obj new file mode 100644 index 000000000..de72acbd6 Binary files /dev/null and b/game/release/g_spawn.obj differ diff --git a/game/release/g_svcmds.obj b/game/release/g_svcmds.obj new file mode 100644 index 000000000..ea2faa7e4 Binary files /dev/null and b/game/release/g_svcmds.obj differ diff --git a/game/release/g_target.obj b/game/release/g_target.obj new file mode 100644 index 000000000..fa3650f70 Binary files /dev/null and b/game/release/g_target.obj differ diff --git a/game/release/g_trigger.obj b/game/release/g_trigger.obj new file mode 100644 index 000000000..42538b7bc Binary files /dev/null and b/game/release/g_trigger.obj differ diff --git a/game/release/g_turret.obj b/game/release/g_turret.obj new file mode 100644 index 000000000..370f2cf56 Binary files /dev/null and b/game/release/g_turret.obj differ diff --git a/game/release/g_utils.obj b/game/release/g_utils.obj new file mode 100644 index 000000000..5091254b9 Binary files /dev/null and b/game/release/g_utils.obj differ diff --git a/game/release/g_weapon.obj b/game/release/g_weapon.obj new file mode 100644 index 000000000..b041bc64b Binary files /dev/null and b/game/release/g_weapon.obj differ diff --git a/game/release/game.log b/game/release/game.log new file mode 100644 index 000000000..41427b19a --- /dev/null +++ b/game/release/game.log @@ -0,0 +1,21 @@ +C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets(524,5): warning MSB8004: Output Directory does not end with a trailing slash. This build instance will add the slash as it is required to allow proper evaluation of the Output Directory. + g_cmds.c +C:\Users\Freddy_PC\quake2-mod\game\g_cmds.c(34,2): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +C:\Users\Freddy_PC\quake2-mod\game\g_cmds.c(57,2): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +C:\Users\Freddy_PC\quake2-mod\game\g_cmds.c(58,2): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +C:\Users\Freddy_PC\quake2-mod\game\g_cmds.c(722,4): warning C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +C:\Users\Freddy_PC\quake2-mod\game\g_cmds.c(725,3): warning C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +C:\Users\Freddy_PC\quake2-mod\game\g_cmds.c(808,3): warning C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +C:\Users\Freddy_PC\quake2-mod\game\g_cmds.c(809,3): warning C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +C:\Users\Freddy_PC\quake2-mod\game\g_cmds.c(810,3): warning C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +C:\Users\Freddy_PC\quake2-mod\game\g_cmds.c(821,3): warning C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +C:\Users\Freddy_PC\quake2-mod\game\g_cmds.c(828,2): warning C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +C:\Users\Freddy_PC\quake2-mod\game\g_cmds.c(875,7): warning C4459: declaration of 'st' hides global declaration + C:\Users\Freddy_PC\quake2-mod\game\g_local.h(456,21): + see declaration of 'st' + +C:\Users\Freddy_PC\quake2-mod\game\g_cmds.c(897,3): warning C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +C:\Users\Freddy_PC\quake2-mod\game\g_cmds.c(885,3): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +C:\Users\Freddy_PC\quake2-mod\game\g_cmds.c(893,4): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. + Creating library .\..\release\gamex86.lib and object .\..\release\gamex86.exp + game.vcxproj -> C:\Program Files (x86)\Steam\steamapps\common\Quake 2\magic\gamex86.dll diff --git a/game/release/game.tlog/CL.command.1.tlog b/game/release/game.tlog/CL.command.1.tlog new file mode 100644 index 000000000..a817ac699 Binary files /dev/null and b/game/release/game.tlog/CL.command.1.tlog differ diff --git a/game/release/game.tlog/CL.read.1.tlog b/game/release/game.tlog/CL.read.1.tlog new file mode 100644 index 000000000..388b5c1fb Binary files /dev/null and b/game/release/game.tlog/CL.read.1.tlog differ diff --git a/game/release/game.tlog/CL.write.1.tlog b/game/release/game.tlog/CL.write.1.tlog new file mode 100644 index 000000000..ed0528b33 Binary files /dev/null and b/game/release/game.tlog/CL.write.1.tlog differ diff --git a/game/release/game.tlog/Cl.items.tlog b/game/release/game.tlog/Cl.items.tlog new file mode 100644 index 000000000..8857a7187 --- /dev/null +++ b/game/release/game.tlog/Cl.items.tlog @@ -0,0 +1,48 @@ +C:\Users\Freddy_PC\quake2-mod\game\g_ai.c;C:\Users\Freddy_PC\quake2-mod\game\release\g_ai.obj +C:\Users\Freddy_PC\quake2-mod\game\g_chase.c;C:\Users\Freddy_PC\quake2-mod\game\release\g_chase.obj +C:\Users\Freddy_PC\quake2-mod\game\g_cmds.c;C:\Users\Freddy_PC\quake2-mod\game\release\g_cmds.obj +C:\Users\Freddy_PC\quake2-mod\game\g_combat.c;C:\Users\Freddy_PC\quake2-mod\game\release\g_combat.obj +C:\Users\Freddy_PC\quake2-mod\game\g_func.c;C:\Users\Freddy_PC\quake2-mod\game\release\g_func.obj +C:\Users\Freddy_PC\quake2-mod\game\g_items.c;C:\Users\Freddy_PC\quake2-mod\game\release\g_items.obj +C:\Users\Freddy_PC\quake2-mod\game\g_main.c;C:\Users\Freddy_PC\quake2-mod\game\release\g_main.obj +C:\Users\Freddy_PC\quake2-mod\game\g_misc.c;C:\Users\Freddy_PC\quake2-mod\game\release\g_misc.obj +C:\Users\Freddy_PC\quake2-mod\game\g_monster.c;C:\Users\Freddy_PC\quake2-mod\game\release\g_monster.obj +C:\Users\Freddy_PC\quake2-mod\game\g_phys.c;C:\Users\Freddy_PC\quake2-mod\game\release\g_phys.obj +C:\Users\Freddy_PC\quake2-mod\game\g_save.c;C:\Users\Freddy_PC\quake2-mod\game\release\g_save.obj +C:\Users\Freddy_PC\quake2-mod\game\g_spawn.c;C:\Users\Freddy_PC\quake2-mod\game\release\g_spawn.obj +C:\Users\Freddy_PC\quake2-mod\game\g_svcmds.c;C:\Users\Freddy_PC\quake2-mod\game\release\g_svcmds.obj +C:\Users\Freddy_PC\quake2-mod\game\g_target.c;C:\Users\Freddy_PC\quake2-mod\game\release\g_target.obj +C:\Users\Freddy_PC\quake2-mod\game\g_trigger.c;C:\Users\Freddy_PC\quake2-mod\game\release\g_trigger.obj +C:\Users\Freddy_PC\quake2-mod\game\g_turret.c;C:\Users\Freddy_PC\quake2-mod\game\release\g_turret.obj +C:\Users\Freddy_PC\quake2-mod\game\g_utils.c;C:\Users\Freddy_PC\quake2-mod\game\release\g_utils.obj +C:\Users\Freddy_PC\quake2-mod\game\g_weapon.c;C:\Users\Freddy_PC\quake2-mod\game\release\g_weapon.obj +C:\Users\Freddy_PC\quake2-mod\game\m_actor.c;C:\Users\Freddy_PC\quake2-mod\game\release\m_actor.obj +C:\Users\Freddy_PC\quake2-mod\game\m_berserk.c;C:\Users\Freddy_PC\quake2-mod\game\release\m_berserk.obj +C:\Users\Freddy_PC\quake2-mod\game\m_boss2.c;C:\Users\Freddy_PC\quake2-mod\game\release\m_boss2.obj +C:\Users\Freddy_PC\quake2-mod\game\m_boss3.c;C:\Users\Freddy_PC\quake2-mod\game\release\m_boss3.obj +C:\Users\Freddy_PC\quake2-mod\game\m_boss31.c;C:\Users\Freddy_PC\quake2-mod\game\release\m_boss31.obj +C:\Users\Freddy_PC\quake2-mod\game\m_boss32.c;C:\Users\Freddy_PC\quake2-mod\game\release\m_boss32.obj +C:\Users\Freddy_PC\quake2-mod\game\m_brain.c;C:\Users\Freddy_PC\quake2-mod\game\release\m_brain.obj +C:\Users\Freddy_PC\quake2-mod\game\m_chick.c;C:\Users\Freddy_PC\quake2-mod\game\release\m_chick.obj +C:\Users\Freddy_PC\quake2-mod\game\m_flash.c;C:\Users\Freddy_PC\quake2-mod\game\release\m_flash.obj +C:\Users\Freddy_PC\quake2-mod\game\m_flipper.c;C:\Users\Freddy_PC\quake2-mod\game\release\m_flipper.obj +C:\Users\Freddy_PC\quake2-mod\game\m_float.c;C:\Users\Freddy_PC\quake2-mod\game\release\m_float.obj +C:\Users\Freddy_PC\quake2-mod\game\m_flyer.c;C:\Users\Freddy_PC\quake2-mod\game\release\m_flyer.obj +C:\Users\Freddy_PC\quake2-mod\game\m_gladiator.c;C:\Users\Freddy_PC\quake2-mod\game\release\m_gladiator.obj +C:\Users\Freddy_PC\quake2-mod\game\m_gunner.c;C:\Users\Freddy_PC\quake2-mod\game\release\m_gunner.obj +C:\Users\Freddy_PC\quake2-mod\game\m_hover.c;C:\Users\Freddy_PC\quake2-mod\game\release\m_hover.obj +C:\Users\Freddy_PC\quake2-mod\game\m_infantry.c;C:\Users\Freddy_PC\quake2-mod\game\release\m_infantry.obj +C:\Users\Freddy_PC\quake2-mod\game\m_insane.c;C:\Users\Freddy_PC\quake2-mod\game\release\m_insane.obj +C:\Users\Freddy_PC\quake2-mod\game\m_medic.c;C:\Users\Freddy_PC\quake2-mod\game\release\m_medic.obj +C:\Users\Freddy_PC\quake2-mod\game\m_move.c;C:\Users\Freddy_PC\quake2-mod\game\release\m_move.obj +C:\Users\Freddy_PC\quake2-mod\game\m_mutant.c;C:\Users\Freddy_PC\quake2-mod\game\release\m_mutant.obj +C:\Users\Freddy_PC\quake2-mod\game\m_parasite.c;C:\Users\Freddy_PC\quake2-mod\game\release\m_parasite.obj +C:\Users\Freddy_PC\quake2-mod\game\m_soldier.c;C:\Users\Freddy_PC\quake2-mod\game\release\m_soldier.obj +C:\Users\Freddy_PC\quake2-mod\game\m_supertank.c;C:\Users\Freddy_PC\quake2-mod\game\release\m_supertank.obj +C:\Users\Freddy_PC\quake2-mod\game\m_tank.c;C:\Users\Freddy_PC\quake2-mod\game\release\m_tank.obj +C:\Users\Freddy_PC\quake2-mod\game\p_client.c;C:\Users\Freddy_PC\quake2-mod\game\release\p_client.obj +C:\Users\Freddy_PC\quake2-mod\game\p_hud.c;C:\Users\Freddy_PC\quake2-mod\game\release\p_hud.obj +C:\Users\Freddy_PC\quake2-mod\game\p_trail.c;C:\Users\Freddy_PC\quake2-mod\game\release\p_trail.obj +C:\Users\Freddy_PC\quake2-mod\game\p_view.c;C:\Users\Freddy_PC\quake2-mod\game\release\p_view.obj +C:\Users\Freddy_PC\quake2-mod\game\p_weapon.c;C:\Users\Freddy_PC\quake2-mod\game\release\p_weapon.obj +C:\Users\Freddy_PC\quake2-mod\game\q_shared.c;C:\Users\Freddy_PC\quake2-mod\game\release\q_shared.obj diff --git a/game/release/game.tlog/game.lastbuildstate b/game/release/game.tlog/game.lastbuildstate new file mode 100644 index 000000000..00cfc22b0 --- /dev/null +++ b/game/release/game.tlog/game.lastbuildstate @@ -0,0 +1,2 @@ +PlatformToolSet=v143:VCToolArchitecture=Native32Bit:VCToolsVersion=14.44.35207:TargetPlatformVersion=10.0.26100.0: +Release|Win32|C:\Users\Freddy_PC\quake2-mod\| diff --git a/game/release/game.tlog/link.command.1.tlog b/game/release/game.tlog/link.command.1.tlog new file mode 100644 index 000000000..b762d6e8c Binary files /dev/null and b/game/release/game.tlog/link.command.1.tlog differ diff --git a/game/release/game.tlog/link.read.1.tlog b/game/release/game.tlog/link.read.1.tlog new file mode 100644 index 000000000..1df33215b Binary files /dev/null and b/game/release/game.tlog/link.read.1.tlog differ diff --git a/game/release/game.tlog/link.secondary.1.tlog b/game/release/game.tlog/link.secondary.1.tlog new file mode 100644 index 000000000..db348af2f --- /dev/null +++ b/game/release/game.tlog/link.secondary.1.tlog @@ -0,0 +1,3 @@ +^C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\G_AI.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\G_CHASE.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\G_CMDS.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\G_COMBAT.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\G_FUNC.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\G_ITEMS.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\G_MAIN.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\G_MISC.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\G_MONSTER.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\G_PHYS.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\G_SAVE.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\G_SPAWN.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\G_SVCMDS.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\G_TARGET.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\G_TRIGGER.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\G_TURRET.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\G_UTILS.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\G_WEAPON.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\M_ACTOR.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\M_BERSERK.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\M_BOSS2.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\M_BOSS3.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\M_BOSS31.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\M_BOSS32.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\M_BRAIN.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\M_CHICK.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\M_FLASH.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\M_FLIPPER.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\M_FLOAT.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\M_FLYER.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\M_GLADIATOR.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\M_GUNNER.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\M_HOVER.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\M_INFANTRY.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\M_INSANE.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\M_MEDIC.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\M_MOVE.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\M_MUTANT.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\M_PARASITE.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\M_SOLDIER.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\M_SUPERTANK.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\M_TANK.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\P_CLIENT.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\P_HUD.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\P_TRAIL.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\P_VIEW.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\P_WEAPON.OBJ|C:\USERS\FREDDY_PC\QUAKE2-MOD\GAME\RELEASE\Q_SHARED.OBJ +C:\Users\Freddy_PC\quake2-mod\release\gamex86.lib +C:\Users\Freddy_PC\quake2-mod\release\gamex86.EXP diff --git a/game/release/game.tlog/link.write.1.tlog b/game/release/game.tlog/link.write.1.tlog new file mode 100644 index 000000000..d88b5a87b Binary files /dev/null and b/game/release/game.tlog/link.write.1.tlog differ diff --git a/game/release/game.vcxproj.FileListAbsolute.txt b/game/release/game.vcxproj.FileListAbsolute.txt new file mode 100644 index 000000000..e69de29bb diff --git a/game/release/gamex86.Build.CppClean.log b/game/release/gamex86.Build.CppClean.log new file mode 100644 index 000000000..53a249a3c --- /dev/null +++ b/game/release/gamex86.Build.CppClean.log @@ -0,0 +1,59 @@ +c:\users\freddy_pc\quake2-mod\game\release\m_berserk.obj +c:\users\freddy_pc\quake2-mod\game\release\m_actor.obj +c:\users\freddy_pc\quake2-mod\game\release\g_weapon.obj +c:\users\freddy_pc\quake2-mod\game\release\g_utils.obj +c:\users\freddy_pc\quake2-mod\game\release\g_turret.obj +c:\users\freddy_pc\quake2-mod\game\release\g_trigger.obj +c:\users\freddy_pc\quake2-mod\game\release\g_target.obj +c:\users\freddy_pc\quake2-mod\game\release\g_svcmds.obj +c:\users\freddy_pc\quake2-mod\game\release\g_spawn.obj +c:\users\freddy_pc\quake2-mod\game\release\g_save.obj +c:\users\freddy_pc\quake2-mod\game\release\g_phys.obj +c:\users\freddy_pc\quake2-mod\game\release\g_monster.obj +c:\users\freddy_pc\quake2-mod\game\release\g_misc.obj +c:\users\freddy_pc\quake2-mod\game\release\g_main.obj +c:\users\freddy_pc\quake2-mod\game\release\g_items.obj +c:\users\freddy_pc\quake2-mod\game\release\g_func.obj +c:\users\freddy_pc\quake2-mod\game\release\g_combat.obj +c:\users\freddy_pc\quake2-mod\game\release\g_cmds.obj +c:\users\freddy_pc\quake2-mod\game\release\g_chase.obj +c:\users\freddy_pc\quake2-mod\game\release\g_ai.obj +c:\users\freddy_pc\quake2-mod\game\release\m_soldier.obj +c:\users\freddy_pc\quake2-mod\game\release\m_parasite.obj +c:\users\freddy_pc\quake2-mod\game\release\m_mutant.obj +c:\users\freddy_pc\quake2-mod\game\release\m_move.obj +c:\users\freddy_pc\quake2-mod\game\release\m_medic.obj +c:\users\freddy_pc\quake2-mod\game\release\m_insane.obj +c:\users\freddy_pc\quake2-mod\game\release\m_infantry.obj +c:\users\freddy_pc\quake2-mod\game\release\m_hover.obj +c:\users\freddy_pc\quake2-mod\game\release\m_gunner.obj +c:\users\freddy_pc\quake2-mod\game\release\m_gladiator.obj +c:\users\freddy_pc\quake2-mod\game\release\m_flyer.obj +c:\users\freddy_pc\quake2-mod\game\release\m_float.obj +c:\users\freddy_pc\quake2-mod\game\release\m_flipper.obj +c:\users\freddy_pc\quake2-mod\game\release\m_flash.obj +c:\users\freddy_pc\quake2-mod\game\release\m_chick.obj +c:\users\freddy_pc\quake2-mod\game\release\m_brain.obj +c:\users\freddy_pc\quake2-mod\game\release\m_boss32.obj +c:\users\freddy_pc\quake2-mod\game\release\m_boss31.obj +c:\users\freddy_pc\quake2-mod\game\release\m_boss3.obj +c:\users\freddy_pc\quake2-mod\game\release\m_boss2.obj +c:\users\freddy_pc\quake2-mod\game\release\q_shared.obj +c:\users\freddy_pc\quake2-mod\game\release\p_weapon.obj +c:\users\freddy_pc\quake2-mod\game\release\p_view.obj +c:\users\freddy_pc\quake2-mod\game\release\p_trail.obj +c:\users\freddy_pc\quake2-mod\game\release\p_hud.obj +c:\users\freddy_pc\quake2-mod\game\release\p_client.obj +c:\users\freddy_pc\quake2-mod\game\release\m_tank.obj +c:\users\freddy_pc\quake2-mod\game\release\m_supertank.obj +c:\program files (x86)\steam\steamapps\common\quake 2\magic\gamex86.dll +c:\users\freddy_pc\quake2-mod\release\gamex86.lib +c:\users\freddy_pc\quake2-mod\release\gamex86.exp +c:\users\freddy_pc\quake2-mod\game\release\game.tlog\cl.command.1.tlog +c:\users\freddy_pc\quake2-mod\game\release\game.tlog\cl.items.tlog +c:\users\freddy_pc\quake2-mod\game\release\game.tlog\cl.read.1.tlog +c:\users\freddy_pc\quake2-mod\game\release\game.tlog\cl.write.1.tlog +c:\users\freddy_pc\quake2-mod\game\release\game.tlog\link.command.1.tlog +c:\users\freddy_pc\quake2-mod\game\release\game.tlog\link.read.1.tlog +c:\users\freddy_pc\quake2-mod\game\release\game.tlog\link.secondary.1.tlog +c:\users\freddy_pc\quake2-mod\game\release\game.tlog\link.write.1.tlog diff --git a/game/release/gamex86.dll.recipe b/game/release/gamex86.dll.recipe new file mode 100644 index 000000000..d2e840ef6 --- /dev/null +++ b/game/release/gamex86.dll.recipe @@ -0,0 +1,11 @@ + + + + + C:\Program Files (x86)\Steam\steamapps\common\Quake 2\magic\gamex86.dll + + + + + + \ No newline at end of file diff --git a/game/release/m_actor.obj b/game/release/m_actor.obj new file mode 100644 index 000000000..013549178 Binary files /dev/null and b/game/release/m_actor.obj differ diff --git a/game/release/m_berserk.obj b/game/release/m_berserk.obj new file mode 100644 index 000000000..7899a21ec Binary files /dev/null and b/game/release/m_berserk.obj differ diff --git a/game/release/m_boss2.obj b/game/release/m_boss2.obj new file mode 100644 index 000000000..55ed71224 Binary files /dev/null and b/game/release/m_boss2.obj differ diff --git a/game/release/m_boss3.obj b/game/release/m_boss3.obj new file mode 100644 index 000000000..44906d446 Binary files /dev/null and b/game/release/m_boss3.obj differ diff --git a/game/release/m_boss31.obj b/game/release/m_boss31.obj new file mode 100644 index 000000000..99cba97b0 Binary files /dev/null and b/game/release/m_boss31.obj differ diff --git a/game/release/m_boss32.obj b/game/release/m_boss32.obj new file mode 100644 index 000000000..72a2a87c3 Binary files /dev/null and b/game/release/m_boss32.obj differ diff --git a/game/release/m_brain.obj b/game/release/m_brain.obj new file mode 100644 index 000000000..88b29d212 Binary files /dev/null and b/game/release/m_brain.obj differ diff --git a/game/release/m_chick.obj b/game/release/m_chick.obj new file mode 100644 index 000000000..f958fbd05 Binary files /dev/null and b/game/release/m_chick.obj differ diff --git a/game/release/m_flash.obj b/game/release/m_flash.obj new file mode 100644 index 000000000..e84f2ddf5 Binary files /dev/null and b/game/release/m_flash.obj differ diff --git a/game/release/m_flipper.obj b/game/release/m_flipper.obj new file mode 100644 index 000000000..5f78d3db4 Binary files /dev/null and b/game/release/m_flipper.obj differ diff --git a/game/release/m_float.obj b/game/release/m_float.obj new file mode 100644 index 000000000..c8e3a0c9a Binary files /dev/null and b/game/release/m_float.obj differ diff --git a/game/release/m_flyer.obj b/game/release/m_flyer.obj new file mode 100644 index 000000000..7d8787a45 Binary files /dev/null and b/game/release/m_flyer.obj differ diff --git a/game/release/m_gladiator.obj b/game/release/m_gladiator.obj new file mode 100644 index 000000000..016714a0a Binary files /dev/null and b/game/release/m_gladiator.obj differ diff --git a/game/release/m_gunner.obj b/game/release/m_gunner.obj new file mode 100644 index 000000000..0152c3507 Binary files /dev/null and b/game/release/m_gunner.obj differ diff --git a/game/release/m_hover.obj b/game/release/m_hover.obj new file mode 100644 index 000000000..0fb60dc43 Binary files /dev/null and b/game/release/m_hover.obj differ diff --git a/game/release/m_infantry.obj b/game/release/m_infantry.obj new file mode 100644 index 000000000..10b041a84 Binary files /dev/null and b/game/release/m_infantry.obj differ diff --git a/game/release/m_insane.obj b/game/release/m_insane.obj new file mode 100644 index 000000000..33b5575a0 Binary files /dev/null and b/game/release/m_insane.obj differ diff --git a/game/release/m_medic.obj b/game/release/m_medic.obj new file mode 100644 index 000000000..cacfbec33 Binary files /dev/null and b/game/release/m_medic.obj differ diff --git a/game/release/m_move.obj b/game/release/m_move.obj new file mode 100644 index 000000000..dc1de0560 Binary files /dev/null and b/game/release/m_move.obj differ diff --git a/game/release/m_mutant.obj b/game/release/m_mutant.obj new file mode 100644 index 000000000..43ee152cd Binary files /dev/null and b/game/release/m_mutant.obj differ diff --git a/game/release/m_parasite.obj b/game/release/m_parasite.obj new file mode 100644 index 000000000..88720a9a6 Binary files /dev/null and b/game/release/m_parasite.obj differ diff --git a/game/release/m_soldier.obj b/game/release/m_soldier.obj new file mode 100644 index 000000000..f7d883c0d Binary files /dev/null and b/game/release/m_soldier.obj differ diff --git a/game/release/m_supertank.obj b/game/release/m_supertank.obj new file mode 100644 index 000000000..d5c3d545a Binary files /dev/null and b/game/release/m_supertank.obj differ diff --git a/game/release/m_tank.obj b/game/release/m_tank.obj new file mode 100644 index 000000000..06177258c Binary files /dev/null and b/game/release/m_tank.obj differ diff --git a/game/release/p_client.obj b/game/release/p_client.obj new file mode 100644 index 000000000..ed7384fcc Binary files /dev/null and b/game/release/p_client.obj differ diff --git a/game/release/p_hud.obj b/game/release/p_hud.obj new file mode 100644 index 000000000..620f6fe51 Binary files /dev/null and b/game/release/p_hud.obj differ diff --git a/game/release/p_trail.obj b/game/release/p_trail.obj new file mode 100644 index 000000000..a2e508716 Binary files /dev/null and b/game/release/p_trail.obj differ diff --git a/game/release/p_view.obj b/game/release/p_view.obj new file mode 100644 index 000000000..4e45f4de7 Binary files /dev/null and b/game/release/p_view.obj differ diff --git a/game/release/p_weapon.obj b/game/release/p_weapon.obj new file mode 100644 index 000000000..1531bab48 Binary files /dev/null and b/game/release/p_weapon.obj differ diff --git a/game/release/q_shared.obj b/game/release/q_shared.obj new file mode 100644 index 000000000..8e195af93 Binary files /dev/null and b/game/release/q_shared.obj differ diff --git a/quake2.sln b/quake2.sln index 05e70930e..be199d0bb 100644 --- a/quake2.sln +++ b/quake2.sln @@ -1,6 +1,8 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 2012 +# Visual Studio Version 17 +VisualStudioVersion = 17.14.36429.23 d17.14 +MinimumVisualStudioVersion = 10.0.40219.1 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ctf", "ctf\ctf.vcxproj", "{C50658D3-5399-49E0-B84E-296D8E01854F}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "game", "game\game.vcxproj", "{99BC3F01-A7EE-4881-939F-8A5EB75E1973}" @@ -11,6 +13,8 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ref_gl", "ref_gl\ref_gl.vcx EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ref_soft", "ref_soft\ref_soft.vcxproj", "{A916FB82-3530-4FD1-B8EA-A489EB94BCC7}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{8EC462FD-D22E-90A8-E5CE-7E832BA40C5D}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug Alpha|Win32 = Debug Alpha|Win32 @@ -74,4 +78,7 @@ Global GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {1F370483-0217-4EFB-AF21-C758E28BB683} + EndGlobalSection EndGlobal diff --git a/quake2.vcxproj b/quake2.vcxproj index dc7d44958..1c42e8e71 100644 --- a/quake2.vcxproj +++ b/quake2.vcxproj @@ -30,26 +30,26 @@ Application - v142 + v143 Application - v142 + v143 false Application - v142 + v143 false Application - v142 + v143 false Application - v142 + v143 false diff --git a/ref_gl/ref_gl.vcxproj b/ref_gl/ref_gl.vcxproj index e08a57326..bdd212e75 100644 --- a/ref_gl/ref_gl.vcxproj +++ b/ref_gl/ref_gl.vcxproj @@ -30,26 +30,26 @@ Application - v142 + v143 DynamicLibrary - v142 + v143 false DynamicLibrary - v142 + v143 false DynamicLibrary - v142 + v143 false DynamicLibrary - v142 + v143 false diff --git a/ref_soft/ref_soft.vcxproj b/ref_soft/ref_soft.vcxproj index 685b4712a..9d7ca3487 100644 --- a/ref_soft/ref_soft.vcxproj +++ b/ref_soft/ref_soft.vcxproj @@ -30,26 +30,26 @@ Application - v142 + v143 DynamicLibrary - v142 + v143 false DynamicLibrary - v142 + v143 false DynamicLibrary - v142 + v143 false DynamicLibrary - v142 + v143 false diff --git a/release/gamex86.exp b/release/gamex86.exp new file mode 100644 index 000000000..34eda4582 Binary files /dev/null and b/release/gamex86.exp differ diff --git a/release/gamex86.lib b/release/gamex86.lib new file mode 100644 index 000000000..f2fee8458 Binary files /dev/null and b/release/gamex86.lib differ