Artifact Chest 2.0

Thothie

Administrator
Staff member
Administrator
Moderator
MSC Archivist
Joined
Apr 8, 2005
Messages
16,342
Reaction score
326
Location
lost

Dark_Force9999

New Adventurer
Joined
Jul 3, 2007
Messages
267
Reaction score
0
wouldn't that mean you're gonna need to fix up those Artifact Chest in the other maps? Max I ever seen anything dispense out of those are 4 maximum, from the best to garbage order.

One for everybody who does not cheat.
:roll:
 

Thothie

Administrator
Staff member
Administrator
Moderator
MSC Archivist
Joined
Apr 8, 2005
Messages
16,342
Reaction score
326
Location
lost
All the artifact chests are being ported to this system (and have been on the ultra-beta servers). The most items I think any current artifact chest has is 6, and yeah, more often 3-4. Again, this gives it out in order of who has the most damage points, and they pick from amongst the inventory.

If the system works well, I'll likely port more and more stuff over to artifact chests. The reason there are currently so few artifact chests, is they are currently not all that dependable.

Should point out, if a new style arti-chest runs out of players before it runs out of items, it'll still vanish. It won't give more than one item per player.
 

HumanSteak

New Adventurer
RiP
Joined
Jan 5, 2006
Messages
900
Reaction score
0
Will arty 2.0 be included in FEB2008a betapack?
Oh, and Dark, f*ck off.
 

Thothie

Administrator
Staff member
Administrator
Moderator
MSC Archivist
Joined
Apr 8, 2005
Messages
16,342
Reaction score
326
Location
lost
Yes, although whether FEB2008a actually comes out in Febuary remains to be seen.
 

Shurik3n

New Adventurer
MSC Developer
RiP
Joined
Aug 15, 2006
Messages
1,357
Reaction score
0
Age
34
Hey Thothie, instead of having score reflect max HP I think it would be better if it showed the chest points. Wouldn't be hard at all to do, all you would have to do script side is call a script command like setuserpoints <target> <points> everytime their points change, or every so often. Then code side would just be making that command and setting frags = to the param. I'll do the code stuff if you think its a good idea.
 

Thothie

Administrator
Staff member
Administrator
Moderator
MSC Archivist
Joined
Apr 8, 2005
Messages
16,342
Reaction score
326
Location
lost
I think, for the server info screen, maxhp would be better. It'd also help differentiate people with the same title. At the moment, damage points only affect a very few chests – most maps don’t even have artifact chests. If ye could get both up there, that maybe another story, but the main thing would be to somehow get frags replaced by maxhp, so that people could get a jist of the level of the server before joining.
 

Shurik3n

New Adventurer
MSC Developer
RiP
Joined
Aug 15, 2006
Messages
1,357
Reaction score
0
Age
34
Well theres a small problem if a map has two artifact chests. What seems to be the case is that the first chest works fine, and the people with the most points get their items and are flagged as having gotten an item. Then the second chest comes around (and likely has better items as its further in the map, but this might not always be the case) and any newcomers or people who didn't get anything from the first chest have first pick on the (possibly) better items. This is only what may have happened, only seen it once and I could be that the person who was late to join did actually get more points than everybody else.

He was using a darksword, which is another concern. If damage points aren't capped to a monsters max hp (which they may be, I don't know) somebody could run around with a darksword hitting 1000+ on rats and get more points by the end of the map than anybody else.

And I believe I did send you a PM about making frags = maxhp, from your last post it sounds like you didn't see it.
 

Thothie

Administrator
Staff member
Administrator
Moderator
MSC Archivist
Joined
Apr 8, 2005
Messages
16,342
Reaction score
326
Location
lost
Well theres a small problem if a map has two artifact chests. What seems to be the case is that the first chest works fine, and the people with the most points get their items and are flagged as having gotten an item. Then the second chest comes around (and likely has better items as its further in the map, but this might not always be the case) and any newcomers or people who didn't get anything from the first chest have first pick on the (possibly) better items. This is only what may have happened, only seen it once and I could be that the person who was late to join did actually get more points than everybody else.
I’d have to look into what might cause that, but each artifact chest is spawned uniquely and starts the process all over again. It maybe I flagged the players in the process or something

Current artifact chest code:
Code:
 //Black chest, the revenge
//- new string and token handling might simplify this mess, so I thought
{
	const ANIM_IDLE idle
	const ANIM_CLOSE close
	const ANIM_OPEN open
	const LIGHT_COLOR (200,200,255)
	const LIGHT_RAD 96
}

{ game_spawn

	//spawn invisible

	hp 1
	invincible  2
	name ''
	width 20
	height 30
	setmodel	misc/treasure.mdl
	setmodelbody 0 1
	setidleanim	ANIM_IDLE

	setvard IMMUNE_PUSH 1
	setvard PLAYING_DEAD 1
	fly 1
	gravity 0

	setsolid none

	setprop ent_me rendermode 5
	setprop ent_me renderamt 0

	setvard BC_DISCONNECTS 0
}

{ game_dynamically_created //<token_items> <token_chances> <token_req_players> <token_disp_names>

	setvard IBC_ITEM_LIST PARAM1
	setvard IBC_ITEM_CHANCES PARAM2
	setvard IBC_REQ_PLAYERS PARAM3
	setvard IBC_ITEM_NAMES PARAM4

	if ( IBC_ITEM_LIST startswith 'PARAM' ) infomsg all "THOTH FUCKED UP (Artifact Chest)" "Dude, artifact this chest has no items!"
	if ( IBC_ITEM_CHANCES startswith 'PARAM' ) infomsg all "THOTH FUCKED UP (Artifact Chest)" "Artifact this chest no spawn chances!"
	if ( IBC_REQ_PLAYERS startswith 'PARAM' ) infomsg all "THOTH FUCKED UP (Artifact Chest)" "Artifact this chest no req players!"
	if ( IBC_ITEM_NAMES startswith 'PARAM' ) infomsg all "THOTH FUCKED UP (Artifact Chest)" "Artifact chest items have no names!"

	if ( PARAM8 isnot 'PARAM8' ) setvard FACE_YAW $vec.yaw(PARAM8) //compatiblity

	setvard ARTIFIACT_DEBUG "ARTIFACT_CHEST ("
	stradd ARTIFIACT_DEBUG game.map.name
	stradd ARTIFIACT_DEBUG "):"

	if ( game.cvar.ms_chatlog ) chatlog $timestamp(>) ARTIFIACT_DEBUG full_inventory: IBC_ITEM_NAMES req_players: IBC_REQ_PLAYERS spawn_chances: IBC_ITEM_CHANCES

	getplayersnb PLAYER_LIST
	setvard N_PLAYERS $get_token_amt(PLAYER_LIST)
	callevent 0.1 filter_items

	if G_DEVELOPER_MODE
	setvard DEV_PLAYER ''
	getplayer DEV_PLAYER 1
	consolemsg DEV_PLAYER ARTY_DEBUG: ARTIFIACT_DEBUG full_inventory:
	consolemsg DEV_PLAYER ARTY_DEBUG: - items: IBC_ITEM_LIST
	consolemsg DEV_PLAYER ARTY_DEBUG: - names: IBC_ITEM_NAMES
	consolemsg DEV_PLAYER ARTY_DEBUG: - players: IBC_REQ_PLAYERS
	consolemsg DEV_PLAYER ARTY_DEBUG: - chances: IBC_ITEM_CHANCES
}

{ filter_items

	if ( FACE_YAW isnot 'FACE_YAW' ) setangle face $vec(0,FACE_YAW,0)

	//remove items that fail spawn chances, or there are not enough players for
	setvard REMOVE_ITEMS ''
	calleventloop $get_token_amt(IBC_ITEM_LIST) filter_items_loop
	if ( $get_token_amt(REMOVE_ITEMS) == $get_token_amt(IBC_ITEM_LIST) )
	{
		if ( game.cvar.ms_chatlog ) chatlog $timestamp(>) ARTIFIACT_DEBUG Removed: all items failed spawn chance rolls.
		deleteent ent_me //got nadda
		local EXIT_SUB 1
	}
	if !EXIT_SUB

	callevent 0.1 remove_items //give a sec for strings to propigate
}

{ filter_items_loop

	local CUR_IDX game.script.iteration
	local CUR_ITEM_REQ_PLAYERS $get_token(IBC_REQ_PLAYERS,CUR_IDX)
	if ( N_PLAYERS < CUR_ITEM_REQ_PLAYERS )
	{
		local REMOVE_ITEM 1
		if G_DEVELOPER_MODE
		consolemsg DEV_PLAYER ARTY_DEBUG: CUR_IDX ( $get_token(IBC_ITEM_LIST,CUR_IDX) ) marked for removal (player req)
	}

	local CUR_ITEM_SPAWNCHANCE $get_token(IBC_ITEM_CHANCES,CUR_IDX)
	multiply CUR_ITEM_SPAWNCHANCE N_PLAYERS
	if ( $rand(1,100) > CUR_ITEM_SPAWNCHANCE )
	{
		local REMOVE_ITEM 1
		if G_DEVELOPER_MODE
		consolemsg DEV_PLAYER ARTY_DEBUG: CUR_IDX ( $get_token(IBC_ITEM_LIST,CUR_IDX) ) marked for removal (spawn chance)
	}

	if REMOVE_ITEM
	token.add REMOVE_ITEMS $get_token(IBC_ITEM_LIST,CUR_IDX)
}

{ remove_items

	if ( G_DEVELOPER_MODE ) consolemsg DEV_PLAYER ARTY_DEBUG: Remove_item_list: REMOVE_ITEMS

	calleventloop $get_token_amt(REMOVE_ITEMS) remove_items_loop
	if ( game.cvar.ms_chatlog ) chatlog $timestamp(>) ARTIFIACT_DEBUG final_inventory: IBC_ITEM_NAMES req_players: IBC_REQ_PLAYERS spawn_chances: IBC_ITEM_CHANCES
	if ( G_DEVELOPER_MODE )
	{
		consolemsg DEV_PLAYER ARTY_DEBUG: ARTIFIACT_DEBUG final_inventory:
		consolemsg DEV_PLAYER ARTY_DEBUG: - items: IBC_ITEM_NAMES
		consolemsg DEV_PLAYER ARTY_DEBUG: - players: IBC_REQ_PLAYERS
		consolemsg DEV_PLAYER ARTY_DEBUG: - chances: IBC_ITEM_CHANCES
	}

	callevent 0.5 choose_player
}

{ remove_items_loop

	local CUR_IDX game.script.iteration
	local ITEM_TO_REMOVE $get_token(REMOVE_ITEMS,CUR_IDX)
	local REMOVE_IDX $get_find_token(IBC_ITEM_LIST,ITEM_TO_REMOVE) 

	if ( G_DEVELOPER_MODE )	consolemsg DEV_PLAYER ARTY_DEBUG: Removing ( $get_token(IBC_ITEM_LIST,REMOVE_IDX) )

	//doing this from here, rather than callevent remove_item, to be safer
	token.del IBC_ITEM_LIST REMOVE_IDX
	token.del IBC_ITEM_CHANCES REMOVE_IDX
	token.del IBC_REQ_PLAYERS REMOVE_IDX
	token.del IBC_ITEM_NAMES REMOVE_IDX
}

{ choose_player

	setvard STRONGEST_IDX 0
	setvard STRONGEST_STAT_LEVEL 0
	calleventloop $get_token_amt(PLAYER_LIST) find_strongest_player
	setvard THE_CHOSEN_ONE $get_token(PLAYER_LIST,STRONGEST_IDX)
	setvard THE_CHOSEN_ONE_IDX STRONGEST_IDX
	token.del PLAYER_LIST STRONGEST_IDX
	callevent inform_player
}

{ find_strongest_player

	local CUR_IDX game.script.iteration
	local CUR_PLAYER $get_token(PLAYER_LIST,CUR_IDX)
	local PLAYER_STAT $get(CUR_PLAYER,scriptvar,PLR_TOTAL_DMG) //newfunc in player_main/game_master +1000 for heal/iceshield -1000 for death
	local PLAYER_SUB_STAT $get(CUR_PLAYER,scriptvar,PLR_DMG) //fraction points
	multiply PLAYER_SUB_STAT 0.001
	add PLAYER_STAT PLAYER_SUB_STAT
	if ( G_DEVELOPER_MODE ) consolemsg DEV_PLAYER ARTY_DEBUG: reading PLAYER_STAT dmgpoints on $get(CUR_PLAYER,name)
	if ( PLAYER_STAT > STRONGEST_STAT_LEVEL )
	{
		setvard STRONGEST_STAT_LEVEL PLAYER_STAT
		setvard STRONGEST_IDX CUR_IDX
	}
}

{ inform_player

	if ( !I_MANIFESTED )
	{
		//I have items, manifest
		name Artifact Chest
		playsound 0 10 magic/spawn.wav
		setvard I_MANIFESTED 1
		clientevent persist all monsters/lighted_cl $get(ent_me,index) LIGHT_COLOR LIGHT_RAD
		setvard MY_LIGHT_IDX game.script.last_sent_id
		callexternal GAME_MASTER gm_fade_in $get(ent_me,id) 5
	}
	infomsg THE_CHOSEN_ONE "ARTIFACT CHEST: YOU HAVE BEEN CHOSEN!" "Select and item of your choosing..."
	playanim hold ANIM_OPEN
	menu.open THE_CHOSEN_ONE
	callevent 10.0 resend_menu
}

{ game_menu_getoptions

	calleventloop $get_token_amt(IBC_ITEM_LIST) list_items
}

{ list_items

	local CUR_IDX game.script.iteration
	local CUR_ITEM_NAME $get_token(IBC_ITEM_NAMES,CUR_IDX)

	local reg.mitem.title 	CUR_ITEM_NAME
	local reg.mitem.type 	callback
	local reg.mitem.data CUR_IDX
	local reg.mitem.callback give_item
	menuitem.register
}

{ game_menu_cancel

	//player clicked cancel on the pop-up menu
	callexternal THE_CHOSEN_ONE ext_last_artie_used $get(ent_me,id)
	local RESP_STRING $get(PARAM1,name)
	strconc RESP_STRING " " has declined to partake in the bounty
	infomsg all "ARTIFACT CHEST" RESP_STRING
	playanim once ANIM_CLOSE
	token.del PLAYER_LIST THE_CHOSEN_ONE_IDX //remove player from list
	callevent 2.0 next_winner
}

{ give_item //<prize_winner> <item_idx>

	callexternal PARAM1 ext_last_artie_used $get(ent_me,id)
	if ( G_DEVELOPER_MODE )	consolemsg DEV_PLAYER ARTY_DEBUG: Menu Select PARAM2

	local CUR_ITEM $get_token(IBC_ITEM_LIST,PARAM2)
	local CUR_ITEM_NAME $get_token(IBC_ITEM_NAMES,PARAM2)
	offer PARAM1 CUR_ITEM
	local RESP_STRING $get(PARAM1,name)
	strconc RESP_STRING " " has recieved a CUR_ITEM_NAME from an Artifact Chest. (NO ROLLING!)
	infomsg all "ARTIFACT CHEST" RESP_STRING

	if ( game.cvar.ms_chatlog ) chatlog $timestamp(>) ARTIFIACT_DEBUG $get(PARAM1,name) chose a CUR_ITEM_NAME

	local ITEM_IDX PARAM2
	callevent remove_item ITEM_IDX

	token.del PLAYER_LIST THE_CHOSEN_ONE_IDX //remove player from list
	playanim once ANIM_CLOSE
	callevent 2.0 next_winner
}

{ next_winner

	if ( $get_token_amt(IBC_ITEM_LIST) == 0 )
	{
		callevent fade_away //out of stuff
		local ALL_DONE 1
	}
	if ( $get_token_amt(PLAYER_LIST) == 0 )
	{
		callevent fade_away //out of players
		local ALL_DONE 1
	}

	if !ALL_DONE
	callevent 1.0 choose_player
}

{ remove_item //<item_idx>
	token.del IBC_ITEM_LIST PARAM1
	token.del IBC_ITEM_CHANCES PARAM1
	token.del IBC_REQ_PLAYERS PARAM1
	token.del IBC_ITEM_NAMES PARAM1
}

{ fade_away

	//passed out everything I had, or ran out of players to pass stuff to, fade out
	playsound 0 10 magic/spawn.wav
	clientevent remove all MY_LIGHT_IDX
	callexternal GAME_MASTER gm_fade_out $get(ent_me,id)
	callevent 3.0 fade_away2
}

{ fade_away2

	deleteent ent_me
}

{ resend_menu
	if $get(THE_CHOSEN_ONE,isplayer) //still here
	if $get(THE_CHOSEN_ONE,scriptvar,PLR_LAST_ARTIE) isnot $get(ent_me,id) //hasnt used me yet
	//send menu again
	menu.open THE_CHOSEN_ONE
	callevent 10.0 resend_menu
}
* PS. I just noticed something bad - the bad-word censor also censors code, which may cause issues should some var have a bad word within. Just be sure that you enable swearing in your profile before trying to compile any of my code snippets, should ye need to in the future. ;)

He was using a darksword, which is another concern. If damage points aren't capped to a monsters max hp (which they may be, I don't know) somebody could run around with a darksword hitting 1000+ on rats and get more points by the end of the map than anybody else.
Fear not, I thought of exactaly that. ;)

Here’s the bit that handles the damage-point tracking:
Code:
 { [server] game_damaged_other //PARAM1=target_hit PARAM2=dmg //players only?
	
	if ( $get(PARAM1,relationship,ent_me) equals enemy )
	{
		if !$get(PARAM1,isplayer)
		local DMG_DONE PARAM2
		local NME_HP $get(PARAM1,hp)
		if ( NME_HP < DMG_DONE )
		{
			local DMG_DONE NME_HP //so we don't get 1000 dmg points for darksword'ing a rat
		}
		add PLR_DMG DMG_DONE
		if ( PLR_DMG >= 1000 )
		{
			callexternal GAME_MASTER add_score $get(ent_me,id) 1
			subtract PLR_DMG 1000
		}
	}

	if DISPLAY_TARG_HP
	setvard HBAR_TARGET PARAM1
	callevent 0.1 show_hbar_monster //give time for health to propigate
}


Also maybe interesting, here's the artifact chest reports from the new log system (possible spoilers):
Code:
Sat Jan 26 20:42:03 2008> ARTIFACT_CHEST (ms_snow): full_inventory: an Ice Blade;an Ice Shield Tome;an Ice Shield Scroll;an Ice Wall Tome;an Ice Wall Scroll; req_players: 2;1;1;1;1; spawn_chances: 20;10;5;10;5;
Sat Jan 26 20:42:03 2008> ARTIFACT_CHEST (ms_snow): final_inventory: an Ice Blade;an Ice Wall Tome;an Ice Wall Scroll req_players: 2;1;1 spawn_chances: 20;10;5
Sat Jan 26 20:42:28 2008> ARTIFACT_CHEST (ms_snow): Shuriken chose a an Ice Blade
Sat Jan 26 20:42:36 2008> ARTIFACT_CHEST (ms_snow): Sabre chose a an Ice Wall Scroll

Sun Jan 27 07:27:57 2008> ARTIFACT_CHEST (ms_wicardoven): full_inventory: some Salamander Armor;a Summon Fangooth Scroll;a Green Rune Blade; req_players: 1;1;2; spawn_chances: 5;5;2;
Sun Jan 27 07:27:57 2008> ARTIFACT_CHEST (ms_wicardoven): final_inventory: a Summon Fangooth Scroll req_players: 1 spawn_chances: 5
Sun Jan 27 07:28:10 2008> ARTIFACT_CHEST (ms_wicardoven): J-M v2.5.5 of Urdual chose a a Summon Fangooth Scroll

Sun Jan 27 07:42:24 2008> ARTIFACT_CHEST (ms_wicardoven): full_inventory: Fire Lizard Skins;a Volcano Scroll;a Scroll of Summon Undead Guardian;Pheonix Armor; req_players: 1;1;1;2; spawn_chances: 10;8;4;2;
Sun Jan 27 07:42:24 2008> ARTIFACT_CHEST (ms_wicardoven): final_inventory: Fire Lizard Skins req_players: 1 spawn_chances: 10
Sun Jan 27 07:42:39 2008> ARTIFACT_CHEST (ms_wicardoven): J-M v2.5.5 of Urdual chose a Fire Lizard Skins

Sun Jan 27 08:53:39 2008> ARTIFACT_CHEST (ms_wicardoven): full_inventory: some Salamander Armor;a Summon Fangooth Scroll;a Green Rune Blade; req_players: 1;1;2; spawn_chances: 5;5;2;
Sun Jan 27 08:53:39 2008> ARTIFACT_CHEST (ms_wicardoven): Removed: all items failed spawn chance rolls.

Sun Jan 27 15:06:27 2008> ARTIFACT_CHEST (ms_wicardoven): full_inventory: Fire Lizard Skins;a Volcano Scroll;a Scroll of Summon Undead Guardian;Pheonix Armor; req_players: 1;1;1;2; spawn_chances: 10;8;4;2;
Sun Jan 27 15:06:27 2008> ARTIFACT_CHEST (ms_wicardoven): final_inventory: Fire Lizard Skins;a Volcano Scroll req_players: 1;1 spawn_chances: 10;8
Sun Jan 27 15:06:40 2008> ARTIFACT_CHEST (ms_wicardoven): Shuriken chose a Fire Lizard Skins
Sun Jan 27 15:06:46 2008> ARTIFACT_CHEST (ms_wicardoven): Reckless-Fire chose a a Volcano Scroll

Sun Jan 27 15:13:04 2008> ARTIFACT_CHEST (ms_wicardoven): full_inventory: some Salamander Armor;a Summon Fangooth Scroll;a Green Rune Blade; req_players: 1;1;2; spawn_chances: 5;5;2;
Sun Jan 27 15:13:04 2008> ARTIFACT_CHEST (ms_wicardoven): final_inventory: a Summon Fangooth Scroll req_players: 1 spawn_chances: 5
Sun Jan 27 15:13:10 2008> ARTIFACT_CHEST (ms_wicardoven): Thraxis chose a a Summon Fangooth Scroll

Sun Jan 27 15:30:37 2008> ARTIFACT_CHEST (ms_wicardoven): full_inventory: some Salamander Armor;a Summon Fangooth Scroll;a Green Rune Blade; req_players: 1;1;2; spawn_chances: 5;5;2;
Sun Jan 27 15:30:38 2008> ARTIFACT_CHEST (ms_wicardoven): final_inventory: some Salamander Armor req_players: 1 spawn_chances: 5
Sun Jan 27 15:30:42 2008> ARTIFACT_CHEST (ms_wicardoven): Humansteak chose a some Salamander Armor

Sun Jan 27 15:49:11 2008> ARTIFACT_CHEST (ms_wicardoven): full_inventory: Fire Lizard Skins;a Volcano Scroll;a Scroll of Summon Undead Guardian;Pheonix Armor; req_players: 1;1;1;2; spawn_chances: 10;8;4;2;
Sun Jan 27 15:49:11 2008> ARTIFACT_CHEST (ms_wicardoven): final_inventory: Fire Lizard Skins;a Scroll of Summon Undead Guardian req_players: 1;1 spawn_chances: 10;4
Sun Jan 27 15:49:16 2008> ARTIFACT_CHEST (ms_wicardoven): Humansteak chose a a Scroll of Summon Undead Guardian
Sun Jan 27 15:49:21 2008> ARTIFACT_CHEST (ms_wicardoven): Reckless-Fire chose a Fire Lizard Skins

Sun Jan 27 15:57:00 2008> ARTIFACT_CHEST (ms_wicardoven): full_inventory: some Salamander Armor;a Summon Fangooth Scroll;a Green Rune Blade; req_players: 1;1;2; spawn_chances: 5;5;2;
Sun Jan 27 15:57:00 2008> ARTIFACT_CHEST (ms_wicardoven): Removed: all items failed spawn chance rolls.
* Note on the spawn chances that is %/per player
 

The Man In Black

Administrator
Staff member
Administrator
Moderator
RiP
Joined
Jul 9, 2006
Messages
6,904
Reaction score
71
Wasn't aware we had that option (swearing filter) :oldshock: Thanks, Thoth!
 

CrazyMonkeyDude

New Adventurer
MSC Developer
RiP
Joined
Jun 29, 2007
Messages
2,619
Reaction score
2
Age
35
The Man In Black said:
Wasn't aware we had that option (swearing filter) :oldshock: Thanks, Thoth!
FUCK YEAH.

EDIT:... Wait. What?

...Doesnt' seem to work for fuck, at least.
 

The Man In Black

Administrator
Staff member
Administrator
Moderator
RiP
Joined
Jul 9, 2006
Messages
6,904
Reaction score
71
Seeing stars still.. Thoth fails us.
 

Thothie

Administrator
Staff member
Administrator
Moderator
MSC Archivist
Joined
Apr 8, 2005
Messages
16,342
Reaction score
326
Location
lost
Well shit.
 

Sabre

New Adventurer
MSC Developer
RiP
Joined
Aug 24, 2004
Messages
4,545
Reaction score
1
Age
35
Location
SoCal
Shit, or S.H.I.T., or S.H.I.T. crest? :p
 

Sabre

New Adventurer
MSC Developer
RiP
Joined
Aug 24, 2004
Messages
4,545
Reaction score
1
Age
35
Location
SoCal
CrazyMonkeyDude said:
Sabre said:
S.H.I.T. crest

Thothie, I'm almost willing to fix something you've been bitching about for a long time so you would throw that crest in...Come on... :D
 

J-M v2.5.5

BANNED
BANNED
Joined
Feb 26, 2005
Messages
5,675
Reaction score
1
Age
35
Location
Nijmegen, the Netherlands.
My love for the artifact chest 2.0 has suddenly become a bit less.

I just went to your server, which was running Wicard Oven. In your server, there was a player called Kyle (level 27), who had killed about six of the first monsters in the map; apparently I joined like two minutes after the map started. A few minutes later, a dude named Brad (level 26 or something) joined. Brad and I showed Kyle the way through the map because he had never been here, and we reached Maldora. Just as we started the boss fight, Vengeance joined. And about 30 seconds later, HumanSteak joined.

In the process of beating up Maldora, I did at least 1500 damage to him, probably more, and I spammed two healing circles to make sure Kyle, Brad and Vengeance wouldn't die.

Maldora died, and an artifact chest showed up. It ignored me completely and it gave Kyle a phoenix armor and Vengeance a volcano scroll.

I am very, very curious as to why the artifact chest ignored me completely, while I helped beat the entire map (except for the first... what... two minutes). There is no chance in hell Kyle could have done more damage than I did; he was using Calrian's mace and I was using my dark sword. In fact, I am quite sure that I also did more damage during the entire map. Why was I ignored by the artifact chest?
 

Shurik3n

New Adventurer
MSC Developer
RiP
Joined
Aug 15, 2006
Messages
1,357
Reaction score
0
Age
34
Did Kyle and Brad just periodically ice shield each other over and over? :roll:
 

Thothie

Administrator
Staff member
Administrator
Moderator
MSC Archivist
Joined
Apr 8, 2005
Messages
16,342
Reaction score
326
Location
lost
It may simply be kyle did more damage than ya thought he did (maybe you were tossing magic at Maldora?), but of course, it may not...

Type my_points at console to get a report on how many damage points you currently have. I need to setup the Artifact Chest log to list how many points folks have...

As a developer tool, ye can use
Code:
lplayers scriptvar PLR_TOTAL_DMG
To get a list of all players damage points (multiply by 1000).

If it comes up all 0's use PLR_DMG instead. (Means everyone has less than 1000)

PS. I love watching ms_wicardoven crash, over and over again, because people keep trying to stuff 8 players into it. Meh, at least I've a recompile for that ready - I just hope Replica doesn't kill me for butchering his map with new lighting systems. image image image

Replaced 124 torches. ><
 

J-M v2.5.5

BANNED
BANNED
Joined
Feb 26, 2005
Messages
5,675
Reaction score
1
Age
35
Location
Nijmegen, the Netherlands.
Thothie said:
It may simply be kyle did more damage than ya thought he did (maybe you were tossing magic at Maldora?), but of course, it may not...
J-M v2.5.5 said:
I did at least 1500 damage to him, probably more
J-M v2.5.5 said:
There is no chance in hell Kyle could have done more damage than I did; he was using Calrian's mace and I was using my dark sword.

Shurik3n said:
Did Kyle and Brad just periodically ice shield each other over and over? :roll:
Could be that they both casted it like only once, so I doubt that was a factor here. The fight didn't last very long either.

Edit: Just tried Crash Oven again, and at one point my player points went from 1400 to 1200 to 1500. Shuriken's points were also going down. Steak had roughly 1200 points and Vengeance went from 7500 to 12000...

...

O_O ...!!!
 

Shurik3n

New Adventurer
MSC Developer
RiP
Joined
Aug 15, 2006
Messages
1,357
Reaction score
0
Age
34
Well so heres something. My points are going down.
 
Top