Cuztomizable Starting Equipment

Moderator: GZDoom Developers

User avatar
chaoscentral
Posts: 677
Joined: Sun Feb 27, 2005 4:32 pm
Location: Revere, MA

Post by chaoscentral »

o... oops for got about getting rid of starting equipment... cancel that idea
User avatar
Talonos
Posts: 789
Joined: Mon May 03, 2004 7:08 am
Location: At college!

Post by Talonos »

That doesn't fit with any kind of even semi-RPG environment.
Agility = speed.
More agility = more speed.
Actually, in terms of firing speed, XP, and therefore level, does make a difference. Example, Dungeons and Dragons, Magic missile. At level one, you can fire one missile per round. At level nine, you can shoot five per round. To port this to doom, make it so at level nine your firing speed for magic missile is five times higher. Thus, your XP affects your firing speed.

Also, in most RPG environments, you gain agility by gaining levels. Thus, XP = agility and agility = speed. Stick in the transitive property, and you get XP = speed.

Anyway...

So, there is no way to make a pwad that you, say, load up with doom2.wad and it will run the scripts in a script library?
User avatar
DoomRater
Posts: 8265
Joined: Wed Jul 28, 2004 8:21 am
Discord: DoomRater#6308
Location: WATR HQ

Post by DoomRater »

Actually a lot of the weapon changes could be done in DECORATE. I'm planning to use upgradable weapons as well, where you get a weapon and it gets better when you have different items in your inventory. Or even for example, making an item that makes a weapon behave in a certain way for a period of time (although THAT might require a script, since DECORATE items don't seem to have a concept of time in them)
Darkhaven
Posts: 29
Joined: Tue Jul 12, 2005 2:55 am

Post by Darkhaven »

This is how I did it in the Punisher TC along with added code for an RPG-like levelup system.

ACSLIB.acs

Code: Select all

#include "zcommon.acs"

int experience, level=0;

int agi,vit,stg,ntl,wis=50;
int oldstat;
//RPG-LIKE SHIT

function void LevelUpStats(void) //criminally inefficient level-up function
{

  oldstat == agi;
  oldstat / level;
  agi += oldstat;
  oldstat == vit;
  oldstat / level;
  vit += oldstat;
  oldstat == stg;
  oldstat / level;
  stg += oldstat;
  oldstat == ntl;
  oldstat / level;
  ntl += oldstat;
  oldstat == wis;
  oldstat / level;
  wis += oldstat;
  oldstat == 0;

}
Script 800 (int addexp)
{

  if(experience >= 500)
  {
    level++;
    LevelUpStats();
    experience==0;
    experience += addexp;
  }
  else
  {
    experience += addexp;
    if(experience >= 500)
      experience==0;
      level++;
      LevelUpStats();
  }

//WEAPONS SHIT
Script 900 ENTER
{

  ClearInventory();
  GiveInventory("Fists", 1);

}

Script 901 RESPAWN
{

  ClearInventory();
  GiveInventory("Fists", 1);

}

Script 902 OPEN
{

 ACS_Execute(900, MAPNUM, 0, 0, 0);

}

MAP01's SCRIPTS lump

Code: Select all


#define MAPNUM 1

#import "ACSLIB.acs"

MAP14's SCRIPTS lump

Code: Select all


#define MAPNUM 14
#import "ACSLIB.acs"

See the pattern here?

EDIT: As soon as I figure out something cool, it gets ignored. How ironic.
User avatar
DoomRater
Posts: 8265
Joined: Wed Jul 28, 2004 8:21 am
Discord: DoomRater#6308
Location: WATR HQ

Post by DoomRater »

I see what you're trying to do... however, I have a feeling DECORATE can do most if not all of what you want better. Mostly because it won't have to be stuck in every map, can be accessed by the weapns themselves more easily, and won't fail if you don't have the script compiled for a map just yet.
Darkhaven
Posts: 29
Joined: Tue Jul 12, 2005 2:55 am

Post by Darkhaven »

That's entirely true, but this is for people still using "real" builds of ZDoom.
User avatar
DoomRater
Posts: 8265
Joined: Wed Jul 28, 2004 8:21 am
Discord: DoomRater#6308
Location: WATR HQ

Post by DoomRater »

It'll work there too, I'm sure.
User avatar
Caligari87
User Accounts Assistant
Posts: 5994
Joined: Thu Feb 26, 2004 3:02 pm
Discord: Caligari87#3089
Github ID: caligari87

Post by Caligari87 »

HobbsTiger1 wrote:I agree with Belial. I'm well adjusted to playing Doom with the set player speeds (running and walking) and adjusting them either way would just throw me.
Hehehe... you wouldn't like my RealCombat mod. I've dropped player speed to an unheard-of level, because it's an RL combat simulation, and even Doomguy's walking seems to be about 25mph. He runs about 5mph in my mod and slows even more for healing purposes.

8-)
User avatar
DoomRater
Posts: 8265
Joined: Wed Jul 28, 2004 8:21 am
Discord: DoomRater#6308
Location: WATR HQ

Post by DoomRater »

Caligari, are you planning on changing the doomguy's height a bit? Making him a tad shorter like in that MARINES.WAD would help balance out the issue of being slower.
User avatar
Risen
Posts: 5263
Joined: Thu Jan 08, 2004 1:02 pm
Location: N44°30' W073°05'

Post by Risen »

Caligari_87 wrote:He runs about 5mph in my mod and slows even more for healing purposes.
I should hope he runs faster than that.

A fast walk is just around 4mph.
A well-trained human can sprint faster than 20mph.
User avatar
DoomRater
Posts: 8265
Joined: Wed Jul 28, 2004 8:21 am
Discord: DoomRater#6308
Location: WATR HQ

Post by DoomRater »

That's what the sprint bar was finally introduced for in newer games, because a human can't keep up a 20mph sprint with 40 pounds of gear for very long.
User avatar
Phobus
Posts: 5984
Joined: Thu May 05, 2005 10:56 am
Location: London

Post by Phobus »

Hmmm... but it is something that you miss out on a little though, not being able to go at a fast pace forever...
User avatar
DoomRater
Posts: 8265
Joined: Wed Jul 28, 2004 8:21 am
Discord: DoomRater#6308
Location: WATR HQ

Post by DoomRater »

That's what Doom's 45mph running speed was for!

Return to “Closed Feature Suggestions”