D2 re-programmed beyond any recognition ;)

Information and updates for all other projects by Black Omen Productions (besides Shadow Empires): Namely Codename: MetalStorm, Anti-Balance, Ultimate Fixer and all versions of XyRAX

Moderators: Nefarius, Joel, Doombreed-x, Vendanna

User avatar
Nefarius
Retired Admin
Cherub
Posts: 11607
Joined: Sat Jun 15, 2002 8:13 pm
Location: Where the blood forever rains

Hand-picked

Re: D2 re-programmed beyond any recognition ;)

Post by Nefarius » Fri Oct 19, 2007 11:01 pm

Are you going to release a bug-fix only mod soon? Or you are going to release all things at once?

Also is there going to be any update on your crazy but excellent AntiBalance mod?
When I get the time to look into other projects again ;) (which is probably not anytime soon, "MetalStorm" is the primary mission objective ATM)


As for bug fixes, when it will be released, this will be released as Ultimate Fixer Vol. 6 --- which will be less a mod then a very extensive plugin. Inasmuch as that the user can control everything it resets to v1.06 standard (so if someone wants only v1.11x LoD without bugs all they have to do is disable everything additional in the config app).

As for AntiBalance, once "MetalStorm" is complete (which is probably in an aeons time) I will draft a new version of this too. But maybe if I get bored and need a distraction from the main project I will draft something before then, idk ;)

... EDIT ...

More shots of new AI --- as with the other AI screens, these AIs are much more brutal then they will be in the final (in main areas that is, sidequest areas do not apply), and their skills are pretty random because we aren't working on that aspect yet.

http://img155.imageshack.us/img155/9894 ... orkzj9.jpg
^ working fetish aura, the skill they couldn't get to work ever since v1.00 :P
This is essentially a curse that buffs, that is, it shows up as a curse (has that red curse stuff on the floor etc) but buffs allies.

http://img513.imageshack.us/img513/2385 ... nedjq2.jpg
^ Wraith mages, hurling everything they've got

http://img152.imageshack.us/img152/1405/unluckydo6.jpg
^ The melee ghosts are still there, but they learned a few new tricks (such as warcries :twisted:)

http://img88.imageshack.us/img88/1562/n ... usysf8.jpg
^ Zakarum Priests (Cantors) in a much more aggressive way then vanilla (streams of lightnings instead of occasional casts, also teleport around like D1-Advocates)

Sample AIs, so you see what you'll be up against ;) --- there are much more complex things planned (such as scriptable AIs) in the future, these are only the tip of the iceberg :twisted:

Code: Select all

DemonGnat
AiDelay = stall
par1 = approach
par2 = attack
par3 = run away after attack sequence
par4 = use skill instead of normal attack (skills 1-4)
par5 = min attacks
par6 = max attacks
par7 = chance to spit (skills 5-8)
par8 = distance needed for spitting

SkeletonMageEx
par1 = attack (skills 2-4)
par2 = stall
par3 = approach
par4 = escape radius
par5 = safe radius
par6 = cast strong skill (skills 5-6) rather then weak skill
par7 = cast buff (skills 7-8)
par8 = steps to walk

DrowRange
par1 = approach
par2 = stall
par3 = attack
par4 = run speed
par5 = safe radius
par6 = escape radius
par7 = use offensive skill (skills 2-6)
par8 = use buff (skills 7-8)

DrowMelee
par1 = approach
par2 = stall
par3 = attack
par4 = run instead of walk
par5 = run speed
par6 = always run distance
par7 = use offensive skill (skills 2-6)
par8 = use buff (skills 7-8)

SpiderQueen
AiDelay = stall
par1 = approach
par2 = attack (melee) (skills 1-2)
par3 = attack (ranged) (skills 3-4)
par4 = use buff (skills 5-6)
par5 = use heal (skill 7)
par6 = apply buff / heal to other unit, not self
par7 = summon
par8 = use corpse (skill 8)

ArachEx
AiDelay = stall
par1 = attack
par2 = approach
par3 = activation chance
par4 = escape distance
par5 = health threshold
par6 = use skill (ranged)
par7 = use skill (melee)
par8 = spell distance

SkeletonEx
par1 = approach
par2 = stall
par3 = attack
par4 = chance for attack1
par5 = activate radius
par6 = spell instead of attack
par7 = last spell number

ZombieEx
par1 = approach
par2 = activate radius
par3 = attack
par4 = chance for attack1
par5 = run
par6 = run speed
par7 = spell instead of attack
par8 = last spell number

SkeletonBowEx
par1 = attack
par2 = stall
par3 = approach
par4 = escape radius
par5 = safe radius
par6 = chance for skill instead of attack
par7 = last skill number
par8 = steps to walk when approaching

GoatmanEx
par1 = approach
par2 = stall
par3 = attack
par4 = run when injured
par5 = health threshold
par6 = random walk
par7 = skill
par8 = last skill number

BaboonEx
par1 = approach
par2 = attack
par3 = use attack 1
par4 = escape speed
par5 = health threshold
par6 = extra life regen
par7 = chance to use skill (skills 2-8)
par8 = chance to blood lust (skill 1)

ZakarumPriestEx
AiDelay = stall
par1 = chance to teleport (also when outside melee) (skill 2)
par2 = chance to use strong skill (skills 3-5)
par3 = attack (ranged) (skills 6-8)
par4 = delay between strong skills
par5 = health threshold (self)
par6 = health threshold (others)
par7 = safe distance (also heal range)
par8 = escape distance

FetishShamanEx
par1 = chance to resurrect (skill 1)
par2 = chance to buff (skill 2)
par3 = size of circle to walk
par4 = chance to walk in circles (literrally)
par5 = range for buff / res
par6 = range for inferno (skill 3)
par7 = chance to curse (skills 4-8)
par8 = stall

SandRaiderEx
AiDelay = stall
par1 = approach
par2 = attack
par3 = use attack 1
par4 = ticks before fully charged (use skill 1)
par5 = health threshold (use skill 2)
par6 = spell instead of attack (skills 3-8, also used for skill 2)
par7 = state to set when charged
par8 = overlay to set when charged

BigHeadEx
AiDelay = stall
par1 = health threshold
par2 = shoot healthy
par3 = shoot hurt
par4 = attack
par5 = escape radius
par6 = safe radius
par7 = spell instead of attack
par8 = last spell number

GhostEx (two AIs in one, MonStats -> flags . melee == true uses melee variant)
- MELEE -
par1 = approach
par2 = attack
par3 = stall
par4 = spell instead of attack (skills 1-5)
par5 = buff self (skills 6-7)
par6 = escape when hurt
par7 = cast curse on player (skill 8)
par8 = health threshold
- RANGED -
AiDelay = stall
par1 = spell (skills 1-3)
par2 = curse (skill 4)
par3 = buff (skills 5-6)
par4 = corpse (skill 7)
par5 = heal (skill 8)
par6 = apply buff / heal to other unit
par7 = escape radius
par8 = safe radius
Last edited by Nefarius on Sat Oct 20, 2007 5:07 am, edited 1 time in total.
''(...) The game can basically be considered unhackable. '' - Blizzard Entertainment (30th May 2000)
Black Omen Productions | MetalStorm: Progress Report | Screenshots

User avatar
GuyAskingQuestion
Retired staff
Arch-Angel
Posts: 1270
Joined: Sun Jun 02, 2002 11:18 pm

Re: D2 re-programmed beyond any recognition ;)

Post by GuyAskingQuestion » Sat Oct 20, 2007 3:11 pm

[quote=Nefarius";p="360753"]As for bug fixes, when it will be released, this will be released as Ultimate Fixer Vol. 6 --- which will be less a mod then a very extensive plugin. Inasmuch as that the user can control everything it resets to v1.06 standard (so if someone wants only v1.11x LoD without bugs all they have to do is disable everything additional in the config app)
[/quote]

You mean there will actually be a new NefEx plugin. 8-O :mrgreen: :P

This new AI looks very intriguing, D2 might actually become a challenge!
I choose my physician and my clergyman, thus indicating my sense of the quality of their work. By all means, also, choose your modmaker; that is the proper reward of the good modmaker, to be 'chosen.'

Terms of Service:Beginners Guide:TTD:Tech Rant: TFW The Awakening

User avatar
Nefarius
Retired Admin
Cherub
Posts: 11607
Joined: Sat Jun 15, 2002 8:13 pm
Location: Where the blood forever rains

Hand-picked

Re: D2 re-programmed beyond any recognition ;)

Post by Nefarius » Mon Oct 22, 2007 6:34 am

UF6 will be in plugin form when I release it yea.

...

More new AI: http://img187.imageshack.us/img187/4553 ... dlynl0.jpg
http://img516.imageshack.us/img516/6788/redcm4.jpg

Code: Select all

FallenShamanEx
AiDelay = stall
par1 = buff / heal / revive / command others
par2 = shoot (skills 7-8)
par3 = attack
par4 = buff / heal / revive radius
par5 = shoot / command radius
par6 = resurrect / heal
par7 = buff
par8 = command attack (also to revived skeletons)
These fallen shamans can heal / buff / command their minions (and also command the raised skeletons to attack ;)) --- they even have the same walk back to boss behavior that 'real' summons also have. (Burning Dead because they are immune to fire ;) and the fireballs have friendly fire active :P --- don't want summoners to kill what they just raised!)

For those interested, this is how a D2 AI looks code wise in C++ (not vanilla AIs, those are usually littered with useless inline funcs and crap..., ask Joel about some of the mess we saw in them)

Code: Select all

void __fastcall MONAI_FallenShaman(D2GameStrc *pGame, D2UnitStrc *pMon, AIPar *pPar)
{
	if (!MONAI_InitFunc(pGame,pMon,pPar,"MONAI_FallenShaman(...)",__FILE__,__LINE__))
		return;

	int par[8];
	MonStatsTXTStrc* pRecord = pPar->pMonStats;
	MONAI_GetParameters(pRecord,&par[0],pGame->gDiff);

	AICONTROL* ai		= pMon->ptrMonsterData->ptAIControl;
	if (ai == NULL)
		assert("ai != NULL",__FILE__,__LINE__);

	bool boss			= false;
	if (ai->pGame != NULL) {
		D2UnitStrc* pBoss = D2GAME_GetUnitFromGUID(pGame,ai->eBossType,ai->bossGUID);
		if (pBoss == pMon)
			boss = true;
	}

	int dist			= pPar->TargetDist;
	D2UnitStrc *pTarget = pPar->pTarget;
	int stall			= pRecord->AIDelay[pGame->gDiff];
	if (stall <= 0)
		stall = 1;

	int other		= par[0]; // heal (skill 6), buff (skills 2-4), resurrect (skill 5), command (skill 1)
	int shoot		= par[1]; // skills (7-8)
	int attack		= par[2];
	int resRange	= par[3];
	int shootRange	= par[4];
	int res			= par[5];
	int buff		= par[6];
	int cmd			= par[7];

	AICMD* pcmd = ai->pCmdLast;
	if (rollchance(pMon,other)) {

		FINDUNITPARAM fup;
		memset((char*)&fup,0,sizeof(fup));
		fup.bBreakOnFirst = TRUE;
		fup.p2 = TRUE;

		if (rollchance(pMon,res)) {
			fup.p1 = TRUE;
			fup.p8 = TRUE;
			D2UnitStrc* pCorpse = MONAI_FindUnit(pGame,pMon,resRange,FINDUNIT_Generic,&fup);
			if (pCorpse != NULL && D2GAME_MonsterResurrectCheck(pGame,pMon,pCorpse,pRecord->skill[4],0,0)) {
				if (MONAI_RandSpellSequence(pGame,pMon,pCorpse,pRecord,100,4,0))
					return;
			}
		} else if (rollchance(pMon,buff)) {
			if (rollchance(pMon,res)) {
				fup.p3 = TRUE;
				fup.p7 = 50;
				D2UnitStrc* pInjured = MONAI_FindUnit(pGame,pMon,resRange,FINDUNIT_Generic,&fup);
				if (pInjured != NULL && MONAI_RandSpellSequence(pGame,pMon,pInjured,pRecord,100,5,0))
					return;
			} else {
				
				int skillNo = xrand(pMon,1,3);
				int stateNo = COMMON_GetBuffState(pRecord->skill[skillNo]);
				if (stateNo != -1) {
					fup.p8 = TRUE;
					fup.p6 = stateNo;
					D2UnitStrc* pOther = MONAI_FindUnit(pGame,pMon,resRange,FINDUNIT_Generic,&fup);
					if (pOther != NULL && MONAI_RandSpellSequence(pGame,pMon,pOther,pRecord,100,skillNo,0))
						return;
				}

			}
		}
		if (boss && dist <= shootRange) {
			if (pcmd == NULL && rollchance(pMon,cmd)) {
				int cmds[7];
				memset((char*)cmds,0,sizeof(cmds));
				cmds[2] = 1;
				D2GAME_CommandMinion(pMon,cmds);
				D2GAME_CommandSelf(pMon,cmds);
				if (MONAI_RandSpellSequence(pGame,pMon,pMon,pRecord,100,0,0))
					return;			
			}
		}
	} else {
		if (Common10677(pMon) <= 50 && rollchance(pMon,res)) {
			if (MONAI_RandSpellSequence(pGame,pMon,pMon,pRecord,100,5,0))
				return;
		}
	}

	if (pcmd != NULL) {
		if (pcmd->cmd[0] == 1) {
			attack = 100;
			shoot = 100;
		} 
		D2GAME_DeleteCommands(pMon);
	}

	if (dist <= shootRange && pPar->IsEngaged == FALSE) {
		if (MONAI_RandSpellSequence(pGame,pMon,pTarget,pRecord,shoot,6,7))
			return;
		D2GAME_MonsterStall(pGame,pMon,stall);
		return;
	}

	if (pPar->IsEngaged == TRUE) {
		if (MONAI_AttackSequence(pGame,pMon,pTarget,attack,100,pPar->pMonStats2))
			return;
		if (MONAI_EscapeSequence(pGame,pMon,pTarget,3,50))
			return;
		D2GAME_MonsterStall(pGame,pMon,stall);
		return;
	}

	MONAI_RangedCircle(pGame,pMon,pTarget,MONMODE_WALK,5,10,TRUE,0,0);
}
Last edited by Nefarius on Mon Oct 22, 2007 6:45 am, edited 2 times in total.
''(...) The game can basically be considered unhackable. '' - Blizzard Entertainment (30th May 2000)
Black Omen Productions | MetalStorm: Progress Report | Screenshots

User avatar
kingpin
Retired Admin
Cherub
Posts: 10954
Joined: Sat Jan 11, 2003 12:51 pm
Sweden

Hand-picked

Re: D2 re-programmed beyond any recognition ;)

Post by kingpin » Mon Oct 22, 2007 10:21 am

For those interested, this is how a D2 AI looks code wise in C++ (not vanilla AIs, those are usually littered with useless inline funcs and crap..., ask Joel about some of the mess we saw in them)
Blizz commonly use inlines in their code :)

User avatar
Nefarius
Retired Admin
Cherub
Posts: 11607
Joined: Sat Jun 15, 2002 8:13 pm
Location: Where the blood forever rains

Hand-picked

Re: D2 re-programmed beyond any recognition ;)

Post by Nefarius » Mon Oct 22, 2007 10:27 am

I think they just left that "automatically inline commonly used funcs" thing in M$VC on instead of off in their project settings.
''(...) The game can basically be considered unhackable. '' - Blizzard Entertainment (30th May 2000)
Black Omen Productions | MetalStorm: Progress Report | Screenshots

User avatar
GuyAskingQuestion
Retired staff
Arch-Angel
Posts: 1270
Joined: Sun Jun 02, 2002 11:18 pm

Post by GuyAskingQuestion » Mon Oct 22, 2007 11:05 am

Just a quick question on the AIs. These are all controllable through the usual means right? And by the way you've documented them in this thread, would I be right in assuming they are documented elsewhere for quick reference?

From the way things are looking this might as well be seen as 1.12 in the eyes of modders :)
I choose my physician and my clergyman, thus indicating my sense of the quality of their work. By all means, also, choose your modmaker; that is the proper reward of the good modmaker, to be 'chosen.'

Terms of Service:Beginners Guide:TTD:Tech Rant: TFW The Awakening

User avatar
Nefarius
Retired Admin
Cherub
Posts: 11607
Joined: Sat Jun 15, 2002 8:13 pm
Location: Where the blood forever rains

Hand-picked

Re: D2 re-programmed beyond any recognition ;)

Post by Nefarius » Mon Oct 22, 2007 12:34 pm

Just a quick question on the AIs. These are all controllable through the usual means right? And by the way you've documented them in this thread, would I be right in assuming they are documented elsewhere for quick reference?
Yes, I copied those AIs here from the MetalStorm documentation here as a demonstration that should work better then screenshots do ;) --- these AIs are controlled by regular means (in fact much more then the vanilla AIs are, which are about 80% hardcoded and 20% softcoded in most cases). Most of this code is finetuned towards what I need the units to do though.
''(...) The game can basically be considered unhackable. '' - Blizzard Entertainment (30th May 2000)
Black Omen Productions | MetalStorm: Progress Report | Screenshots

User avatar
Vendanna
Hosted Forum Moderator
Arch-Angel
Posts: 1387
Joined: Sun Nov 24, 2002 4:55 pm
Location: Cartagena (Spain)

Post by Vendanna » Mon Oct 22, 2007 3:55 pm

[quote=GuyAskingQuestion";p="361254"]From the way things are looking this might as well be seen as 1.12 in the eyes of modders :)[/quote]

It would be more precise as 1.2 than 1.12 due to the brutal amount of changes Nef did on the code (only) but I'll refrain of telling anything of the project at this time.

Only that it will be cool to play if only for all the bugfixes :P
"Mysteries are revealed in the light of reason."

Black Omen's production

User avatar
Nefarius
Retired Admin
Cherub
Posts: 11607
Joined: Sat Jun 15, 2002 8:13 pm
Location: Where the blood forever rains

Hand-picked

Re: D2 re-programmed beyond any recognition ;)

Post by Nefarius » Tue Oct 23, 2007 12:40 am

This post is somewhat about the mechanics and also somewhat on the new damage types (since I guess people are interested in what those do).

This won't contain anything that will spoil content, it's just 'raw mechanics' if you do consider this a spoiler skip this post (the entire topic :P) --- what I wont do here is post any formulae, I did this elsewhere, but the formula change quite often while they are being tested out.


Stamina - we've made this stat a lot more crucial for survival (in fact stamina is equally important as life now, for every character. There are several ways to lose stamina besides running. First of all every time you take damage you also lose stamina, though not as much as life (50% of the damage done to life is applied to stamina as well), when using any form of skill you also lose stamina, not a lot, in fact it's more a fixed amount max(manacost/256,1), if you run dry of stamina you can't use the skill at all. (Some skills actually drain stamina as their primary stat). And of course, you lose stamina while running around (also in town). So why is it crucial? Stamina controls you chance to get knocked into hit recovery, the lower your stamina percentage the higher the chance you will go into hit recovery when getting struck, if you're very low on stamina, you will get stunned. Which brings me to:

Stun / Freeze / Stone Curse - gone are the days when stuff like this effected only monsters, if you're stunned you're stunned just like monsters (can't move), if you're frozen or stoned, equally you're going to be stuck there until someone either cures you or the effect wears off (of course, you have ways to protect from this).

Distance Counts - ranged and missile weapons need a certain distance to be effective against targets, being too close means you'll miss more often. The same applies to firing at far away things (off screen mostly), of course since I'm not blizzard, there is a similar thing also effecting casted spells. The further a missile has to travel the less damage it will deal (this also applies to things like Meteors --- shut it if you're gonna say 'it doesn't make sense', this is a game :lol:).

Other aspects of attacker / defender stuff. Your defense stays normal when running, same goes for blocking, however being Chilled, Frozen or Petrified will penalize your defense (being Chilled when attacking will penalize your tohit).

Primary stats are capped like they were in D1, that is, you can't pump vitality ad infinitum, it will max out, the limit varies with your class and (possibly also) subclass [no details on subclasses here, thats top secret :twisted:].

---

Now to the new damage types (well some of them at least + some other interesting effects).

Acid - acid works along the lines of poison when it comes to damaging your character, however the side effect is quite unlike poison, acid will deteriorate your equipment, making it lose defense and maximum durability, also the amount of durability lost and the chance of losing durability when being hit / attacking increases. (When items shatter they shatter for good, a la D1, there are of course ways to prevent this, and also ways to restore the max dur and defense)

Negative Plane - Negative plane damage is the type of damage done by offensive black magic attacks, it works like a regular damage type (that is fire / lightning / magic), however it has the side effect of despelling buffs and other enchantments your character has (some of these side effects have to be coded still, but it ain't that difficult).

Level Drain - used by certain undead creatures, level drain will effectively down-level a player. However this does not open loopholes for cheating, if you were lvl 125 and got drained 25 levels, you're going to max out at clvl 125 again, not 150 until you use restorative magic (npcs cannot cure this, the effect is saved so no save/exit). Level drain also penalizes skill levels. It can be restored by the use of restorative magic (all penalities applied by the drain, are removed).

http://img132.imageshack.us/img132/353/ ... 075fo4.jpg - time to kick some zombie arse
http://img81.imageshack.us/img81/692/sc ... 076kx1.jpg - oh noes, level drain
http://img81.imageshack.us/img81/8570/jkasgkdassk3.jpg - much better

Other damage types will include Psionics (which will induce a random AI - effect on monsters, and possibly some never seen before stuff on players, but I ain't going to brainstorm in a public topic)

Another effect shown in screenshots before are items that have a 'Chance to make the Target Explode' property on them, this essentially turns whatever monster you hit into a walking timebomb, that detonates after a specific amount of time (depending on the different between clvl and mlvl). It explodes damaging everything (it has friendly fire enabled) --- similar effect but different purpose, some summoning spells will require you to select an existing summon to sacrifice (think about casting Enchant on a golem, but instead of enchanting it the golem blows up and something new is created from the remains).

Thats all for today ;)
I'm willing to leak more info about some topics so send your questions my way ;)
Last edited by Nefarius on Tue Oct 23, 2007 12:50 am, edited 1 time in total.
''(...) The game can basically be considered unhackable. '' - Blizzard Entertainment (30th May 2000)
Black Omen Productions | MetalStorm: Progress Report | Screenshots

User avatar
Hans
Dark Alliance Beta Test
Dominion
Posts: 6438
Joined: Sat Oct 02, 2004 5:14 pm
Location: Toronto, Ontario, Canada

Post by Hans » Tue Oct 23, 2007 1:03 am

Nefarius: Your teasers are wetting my appetite to play your mod. Are you planning to have a Beta.
"Hi. My name is Hans, and I am addicted to a game that is not yet been made" - Card carrying member of D3 Addictions Anonymous, since June 2008.
Card carrying member of Mentaldom, since May 2006 - Zy-El Hardcore.
"German pornstar/Bee Gee lookalike" & "The Blacksmith"
Trying to picture Hans as a Dominion...nah it isn't working sorry. It's the mustache that gets me every time - Al-T.
"All men play on 127" O-H - Hans
"Okay, time out. This is Zy-El. The mod of total excess. Since when would any Zy-El lover do only what's necessary?" - Metropolis Man
Zy-El Wiki|New Zy-El Website

User avatar
oneillz808
Forum Regular
Angel
Posts: 625
Joined: Tue Jul 10, 2007 9:09 am

Post by oneillz808 » Tue Oct 23, 2007 1:20 am

[quote=Hans";p="361382"]Nefarius: Your teasers are wetting my appetite to play your mod. Are you planning to have a Beta.[/quote]

agreed.

i want more! :D and i want to play!

User avatar
Nefarius
Retired Admin
Cherub
Posts: 11607
Joined: Sat Jun 15, 2002 8:13 pm
Location: Where the blood forever rains

Hand-picked

Re: D2 re-programmed beyond any recognition ;)

Post by Nefarius » Tue Oct 23, 2007 1:21 am

[quote=Hans";p="361382"]Are you planning to have a Beta.[/quote]

I will be thinking about having a beta when the project reaches that phase of development. Currently it is a alpha, I will probably consider having a public beta once it is very near completion (inasmuch as that people would get to keep their beta characters and who knows, maybe some special bonus items :twisted:), which would mostly be a final step of polishing. But thats not to say I may not recruit people for an internal beta at an earlier point.
Last edited by Nefarius on Tue Oct 23, 2007 1:23 am, edited 1 time in total.
''(...) The game can basically be considered unhackable. '' - Blizzard Entertainment (30th May 2000)
Black Omen Productions | MetalStorm: Progress Report | Screenshots

User avatar
Hans
Dark Alliance Beta Test
Dominion
Posts: 6438
Joined: Sat Oct 02, 2004 5:14 pm
Location: Toronto, Ontario, Canada

Post by Hans » Tue Oct 23, 2007 2:37 am

Will be waiting patiently until that day comes.
"Hi. My name is Hans, and I am addicted to a game that is not yet been made" - Card carrying member of D3 Addictions Anonymous, since June 2008.
Card carrying member of Mentaldom, since May 2006 - Zy-El Hardcore.
"German pornstar/Bee Gee lookalike" & "The Blacksmith"
Trying to picture Hans as a Dominion...nah it isn't working sorry. It's the mustache that gets me every time - Al-T.
"All men play on 127" O-H - Hans
"Okay, time out. This is Zy-El. The mod of total excess. Since when would any Zy-El lover do only what's necessary?" - Metropolis Man
Zy-El Wiki|New Zy-El Website

User avatar
DemonicAngel
Forum Legend
Principality
Posts: 2425
Joined: Mon Nov 27, 2006 2:06 am

Post by DemonicAngel » Tue Oct 23, 2007 4:35 am

[quote=Hans";p="361403"]Will be waiting patiently until that day comes.[/quote]

I will be waiting more patiently until that day comes... (Read: Pick me! Pick me!) ;)
Last edited by DemonicAngel on Tue Oct 23, 2007 4:42 am, edited 1 time in total.

User avatar
Eclipse008
Posts: 18
Joined: Sun May 13, 2007 8:08 pm

Re: D2 re-programmed beyond any recognition ;)

Post by Eclipse008 » Sun Oct 28, 2007 4:59 am

Wow. Is your goal to top every mod ever made combined? It appears to be working <.<

Just out of curiosity, what sort of rough percentage of this is finished?

User avatar
DemonicAngel
Forum Legend
Principality
Posts: 2425
Joined: Mon Nov 27, 2006 2:06 am

Re: D2 re-programmed beyond any recognition ;)

Post by DemonicAngel » Sun Oct 28, 2007 5:36 am

[quote=Eclipse008";p="362462"]Wow. Is your goal to top every mod ever made combined? It appears to be working <.<

Just out of curiosity, what sort of rough percentage of this is finished?[/quote]

Last time we asked him, it was 25% done total (but 75% done code editing-wise). Hopefully he's been working real hard since then! :mrgreenlaughing:

User avatar
Nefarius
Retired Admin
Cherub
Posts: 11607
Joined: Sat Jun 15, 2002 8:13 pm
Location: Where the blood forever rains

Hand-picked

Re: D2 re-programmed beyond any recognition ;)

Post by Nefarius » Fri Nov 02, 2007 8:01 pm

There has been considerable development on this aspect in the last few days. The code is def. more then 75% done now, although the future will tell how much additional work will have to go into that aspect.

The AI engine has been rewritten a second time and new the AI's are largely scriptable and thus new AI sequences can be added without ever touching the code again (unless some special new behavior is needed).

Also the quest engine (which has support out-of-the-box for over 2048 x 3 side quests has been synchronized for multiplayer (aka it takes parties into account like the original ones do).
''(...) The game can basically be considered unhackable. '' - Blizzard Entertainment (30th May 2000)
Black Omen Productions | MetalStorm: Progress Report | Screenshots

User avatar
colosssus
Junior Member
Paladin
Posts: 139
Joined: Tue Jun 11, 2002 5:43 am
Location: Toronto

Re: D2 re-programmed beyond any recognition ;)

Post by colosssus » Sat Nov 03, 2007 8:48 am

Hey nef! your new mod looks amazing! i only have one question..an odd one at that ^_^ in one of your screenshots, you can see "pod-not xlated call ken" or something very close to that..if memory serves me..and it may not be, but that same message used to be displayed in ancients TFW..i believe the original, V.1, i think it was fixed in V 1.1, but i may be mistaken. Anyways, just curious as to what it was doin there.
All things shall be revealed through the passage of time

User avatar
Nefarius
Retired Admin
Cherub
Posts: 11607
Joined: Sat Jun 15, 2002 8:13 pm
Location: Where the blood forever rains

Hand-picked

Re: D2 re-programmed beyond any recognition ;)

Post by Nefarius » Sat Nov 03, 2007 9:21 am

Thats just there because I usually don't bother adding strings for temporary test objects and monsters.

When the game doesn't find a string which is encoded in archaic format (by code-name rather then index # --- viz. Objects.txt mostly, which was never updated since the launch of the game other then adding new objects) it will output

Code: Select all

 - not xlated call Ken (the guy at Blizzard who was responsible for the strings).
Last edited by Nefarius on Sat Nov 03, 2007 9:24 am, edited 1 time in total.
''(...) The game can basically be considered unhackable. '' - Blizzard Entertainment (30th May 2000)
Black Omen Productions | MetalStorm: Progress Report | Screenshots

User avatar
sPoT
Forum Regular
Angel
Posts: 811
Joined: Sat Jun 21, 2003 9:10 am
Location: Poland

Post by sPoT » Sat Nov 03, 2007 1:31 pm

If tot translated then call Ken? :D Lol, I feel like figured it out eventually.

But back to the topic: still I cannot realise whether it is going to be another modification, that uses your extended code, or just a set of different code editing related plugins... Is all what you are working on now is going to be released as a plugin, or available only as a complete, new modification? I would like to use some of your features, but are they all going to be available for a typical modder?
Do you know that every modding question has an answer? Just use the power, click me!
"The Defile" - Forum - currently closed
The best guide for every modmaker!

User avatar
Nefarius
Retired Admin
Cherub
Posts: 11607
Joined: Sat Jun 15, 2002 8:13 pm
Location: Where the blood forever rains

Hand-picked

Moved

Post by Nefarius » Sat Nov 03, 2007 1:42 pm

*This topic has been moved from Diablo 2 Chatter to Codename: MetalStorm, Anti-Balance and Ultimate Fixer*



To answer your question again (I did once already I think :P).
"MetalStorm" is a standalone mod project, it is a mod and it will be available only in its entierty.

But there will eventually be plugins with some of these changes, but none of the really complex things, for a couple of reasons, first of all, these things are way too deeply tied into the D2 and my own code to be even thinkable as standalone plugins [using these things by themselves will make the game completely unplayable] (each of these plugins would require anywhere between 3000-5000 lines of code to work and at least another 5K lines of other utility code to not trash the game into shreds, which I doubt any sane person would be willing to do).

Simpler changes such as extra warps for the Cow Level (this sounds simple enough, but I had to replace a fair bit of the overground generation code for this to work) and the like I will however make available as plugins when I get the time to do it (after this project gets along faster). All the information necessary for 80% of these changes is available to everyone who has access to the D2Mod/Nefex SDKs however, so I don't have to be the one doing it, they may be comming from different angle.

---

Now that there is a standalone forum for this and all my other projects, please if you have specific questions post them in seperate topics with proper titles and not in this one here.
Last edited by Nefarius on Sat Nov 03, 2007 3:22 pm, edited 2 times in total.

User avatar
Hero1986
Posts: 16
Joined: Sun Nov 11, 2007 9:59 pm

Re: D2 re-programmed beyond any recognition ;)

Post by Hero1986 » Mon Nov 12, 2007 3:33 am

nef, mod looks amazing so far.. cant wait to play it :)

User avatar
Monty Burns
Posts: 44
Joined: Thu Jan 22, 2009 11:44 pm

Re: D2 re-programmed beyond any recognition ;)

Post by Monty Burns » Wed Jan 28, 2009 12:35 am

I found this topic and yeah I don't think I should even make a mod anymore :lol: Looks amazing!

one question though, not sure if you will answer this cause of spoilers but is their going to be completely new quest or are you still going along with the storyline?

User avatar
Necrolis
Senior Admin
Throne
Posts: 9125
Joined: Sat Mar 25, 2006 1:22 pm
Location: The Land of the Dead
South Africa

Hand-picked

Re: D2 re-programmed beyond any recognition ;)

Post by Necrolis » Wed Jan 28, 2009 4:27 am

[quote=Monty Burns";p="410156"]I found this topic and yeah I don't think I should even make a mod anymore :lol: Looks amazing!

one question though, not sure if you will answer this cause of spoilers but is their going to be completely new quest or are you still going along with the storyline?[/quote]I suggest you look at the other topics in the mods by Nefarius forum ;)
Image
Netiquette, Do you USE it?!?! | Nefarius' Fixed TXT Files | Terms Of Service
Blackened | Day of Death | D2GFEx
"What was yours is mine. Your land, your people, and now your life." - Lim-Dul, the Necromancer
Judgement is Final, Death is Eternal

User avatar
julealgon
Posts: 5
Joined: Fri Mar 13, 2009 4:34 pm
Brazil

Re: D2 re-programmed beyond any recognition ;)

Post by julealgon » Mon Mar 30, 2009 4:41 pm

I don't know if this is the correct place to post a suggestion like this, but here I go anyway Nefarius.

Have you considered that gold pick implementation they did for D3? The one that autopicks gold for you based on the distance you are from the piles? Is that possible to do at all in the current code?

Just something I wanted to throw out there, and sorry for the near necroposting here.

Return to “Mods by Nefarius”