Food Clan .::. Zombie Assassins
image Navigation image
 
· Search Our Site

· Join [ZÅ]

Important Links
· Home
· Special Requests
· Allies & Friends

Features
· Newsletter
· Fan Fiction
· YouTube Page
· Hall of Fame

Rules & Information
· Website Rules
· Membership Rules
· Server Rules & Info
· Classic Server Password Test
· The History of [ZÅ]
· Site & Server Admins
· Staying Safe Online


Other
· News Categories
· Downloads
· Photo Gallery
· Hall of Shame
· I DON'T THINK RAZ IS GOD
 
image image
image Last Seen Users image
 
· [ZÅ]SlimJim 1 day
· [ZÅ~V]Stuntman 3 days
· [ZÅ]Noobo 3 weeks
· [LÅZY]LazyTarget 6 weeks
· [ZÅ~V]DrkInferno12 weeks
· [ZÅ]Riptide22 weeks
· ZA Flax22 weeks
· [ZÅ]ODST-LoL26 weeks
· [ZÅ]JP27 weeks
· lkshadow30 weeks
· [ZÅ]MasterA41 weeks
· [ZÅ]Giants41 weeks
· [ZÅ]Dudeman41 weeks
· [ZÅ]Link-MC--LoL-CSGO43 weeks
· [ZÅ]Razberry43 weeks
· [ZÅ]Innervision47 weeks
· [ZÅ~V]Phoenix50 weeks
· [ZÅ~V]BrickSquad61 weeks
· {FC}Cookie64 weeks
· [ZÅ]Bvigil67 weeks
· [ZÅ~V]Boxhead68 weeks
· [ZÅ]Vlexis74 weeks
· {FC}Wings74 weeks
· [ZÅ~V]Buck75 weeks
· {FC~V}Coyote144 weeks
· [ZÅ~V]TheHatofLove150 weeks
· Kennan157 weeks
· [ZÅ]Paradox-MC-158 weeks
· zuko174 weeks
· A§H»ĴΘΘĶ181 weeks
· [ZÅ]Vaxjo184 weeks
· coldplay99184 weeks
· [ZÅ~V]RAGE184 weeks
· samtheman32189 weeks
· [ZÅ]ninja189 weeks
· [ZÅ]Code189 weeks
· FRINGE190 weeks
· [ZÅ]Leve190 weeks
· [ZÅ~V]Ezrab190 weeks
· BMF190 weeks
· MRBILL190 weeks
· [ZÅ~V]Hercules192 weeks
· ginny18231 weeks
· [ZÅ~V]Cloverton269 weeks
· [ZÅ]Carnage-WoWs285 weeks
· [ZÅ]Mist-Stn286 weeks
· theatticus294 weeks
· [ZÅ~V]Star298 weeks
· [ZÅ~V]Neo302 weeks
· [ZÅ]Saviour310 weeks
· [ZÅ~V]Irock23311 weeks
· [ZÅ]Revenge-Stn321 weeks
· Habu327 weeks
· [ZÅ~V]Althor338 weeks
· Founder~[ZÅ~V]Trunks338 weeks
· [ZÅ~V]Llamas344 weeks
· [ZÅ~V]Bagels346 weeks
· Founder~[ZÅ~V]Coke352 weeks
· Teemo353 weeks
· Rabidtaco353 weeks
· [ZÅ~V]BlackAdder-LoL360 weeks
· [ZÅ~V]Ice368 weeks
· Hav375 weeks
· [ZÅ~V]Huggy380 weeks
· [ZÅ~V]RealmHunter381 weeks
· [ZÅ]Tulip-LoL-CSGO382 weeks
· [ZÅ~V]Pizzleini387 weeks
· [ZÅ~V]Martyr388 weeks
· Java394 weeks
· SpartanJaz398 weeks
· [ZÅ~V]Luna398 weeks
· [ZÅ~V]Kíttý412 weeks
· [ZÅ~V]Sinder414 weeks
· arbiterspar420 weeks
· Bacon425 weeks
· Magnum429 weeks
· H4WK437 weeks
· [Lagzy]448 weeks
· [ZÅ]Whatmesage455 weeks
· [ZÅ~V]Suika457 weeks
· Zidane458 weeks
· [ZÅ~V]Pieeater458 weeks
· [ZÅ~V]Numpty459 weeks
· [ZÅ]Swicey459 weeks
· [ZÅ~V]ChAr459 weeks
· Smile.jpg459 weeks
· Ronald459 weeks
· Bane459 weeks
· [ZÅ]Soulcyon-LoL459 weeks
· TacoCookie459 weeks
· [ZÅ]Buckwheat459 weeks
· [ZÅ~V]PirateKing-LoL460 weeks
· ShawnPeezy471 weeks
· [ZÅ~V]JOSEPH5484 weeks
· xXKrysisXx490 weeks
· Chuck491 weeks
· Homeless492 weeks
· Warrior493 weeks
· [ZÅ~V]Smurf495 weeks
· JunkyMonkey495 weeks
 
image image
image View Thread image
 
 Print Thread
Phasor [Halo PC Infection]
oxide
#1 Print Post
Posted on 01/02/2011 00:59:19
Newbie


Posts: 6
Joined: 02.01.11

Hi,

I'm making a program for Halo PC, Phasor. Phasor does some stuff internally (hash rcon, more rcon commands etc) and does some other stuff externally, via scripts (Lua). I wanted to make an infection-style mod, but I wanted to let people customize it. That's where the script system comes in.

Phasor implements scripts either locally or globally. If a script based on the current map/gametype isn't found then a global one is loaded. The scripts have various exported functions that get called when certain events happen. The scripts can also call exposed Phasor functions. This is how I'm implementing Infection, it's a way of introducing the scripting interface.

Anyway, I'm posting here because I want ideas. What kind of things do you want to be able to do? Below are the functions that are done. Post ideas. Please.

Events (done):
[list]
[*]void OnScriptLoad(processid) - Called when the script is loaded. Process id is the parameter.
[*]void OnScriptUnload() - Called when the script is about to be unloaded.
[*]void OnNewGame(map) - Called when a new game is starting, the map name is passed.
[*]void OnGameEnd(type) - Called when a game "ends". Type specifies the event, 1 is the game just finished (still ingame F1 menu displayed), 2 is the post game, 3 is when quit shows up in post game.
[*]int OnTeamDecision(cur_team)- Called when a player is being assigned a team (as they join). cur_team is their current team and the return value is the actual team they are to join.
[*]void OnPlayerLeave(player, team) - Called when a player leaves.
[*]void OnPlayerKill(killer, victim) - Called when a player kills another player.
[*]bool OnTeamChange(relevant, player, team, dest_team) - Called when a player is changing teams. Relevant specifies whether or not the return value is considered. If relevant is 1 the return value is used to determine whether or not the player can change team.
[*]bool OnWeaponPickup(player) - Called when a player attempts to pickup a weapon. Return value determines whether or not they're allowed to.
[*]bool OnVehicleEntry(player) - Called when a player attempts to enter a vehicle. Return value determines whether or not they're allowed to.
[*]bool OnWeaponReload(player) - Called when a player attempts to reload. Return value determines whether or not they're allowed to.
[*]bool OnAmmoPickup(player) - Called when a player attempts to pickup ammo. Return value determines whether or not they're allowed to.
[*]bool OnGrenadePickup(player) - Called when a player attempts to pickup grenades. Return value determines whether or not they're allowed to.
[/list]

Planned:
[list]
[*]void OnPlayerSpawn(player) - Called when a player spawns, just after their object is assigned. You can change ammo and have it sync if done HERE.
[*]bool OnFallDamage(player) - Called when a player experiences fall damage. Return 0 to stop the fall damage.
[/list]

Exported functions that scripts can use:
[list]
[*]void hprintf(char* msg) - Writes text to the server console
[*]void changeteam(DWORD player) - Changes a player's team
[*]DWORD getteam(DWORD player) - Returns a player's current team.
[*]void setspeed(DWORD player, float speed) - Sets a player's speed (default is 1.0).
[*]void say(char* msg) - Sends a message to the server. (atm multibyte is passed and coverted into unicode, idk how to do unicode in Lua).
[*]void privatesay(DWORD player, char* msg) - Sends a server message to a specific player
[*]void registertimer(DWORD id, DWORD delay, DWORD userdata, char* callback) - Sets up a timer that calls the function 'callback' when the delay runs down. The callbacks return value is 0 or 1, 1 indicates the timer should repeat, 0 deletes the timer.
[*]char* getname(DWORD player) - Returns the multibyte representation of a player's name.
[*]char* gethash(DWORD player) - Returns a player's hashcode
[*]int getteamsize(DWORD team) - Returns the size of the specified team
[*]void svcmd(char* cmd) - Executes a server command
[/list]

Planned:
[list]
[*]void setdmgmodifier(DWORD weapon, float modifier)
[*]void sethealthmodifier(DWORD player, float modifier)
[*]DWORD getweapon(DWORD player, DWORD order)
[*]DWORD getcurrentweapon(DWORD player)
[/list]
 
Send Private Message
ninja
#2 Print Post
Posted on 01/02/2011 07:26:41
User Avatar

Super Admin


Posts: 4174
Joined: 15.11.10

Why do we need this?
steamsignature.com/status/english/76561198019046882.png

i.imgur.com/EzcOjDS.png
My brain is open.
- Paul Erdős
 
Send Private Message
oxide
#3 Print Post
Posted on 01/02/2011 07:31:58
Newbie


Posts: 6
Joined: 02.01.11

Maybe because some people, who aren't lazy, want to customize how the server runs. Just a thought.
Edited by oxide on 01/02/2011 07:35:10
 
Send Private Message
ninja
#4 Print Post
Posted on 01/02/2011 07:33:29
User Avatar

Super Admin


Posts: 4174
Joined: 15.11.10

oxide wrote:
Maybe because some people, who aren't lazy, want to customize how the server runs. Just a thought.

Fair enough. Some of it sounds quite cool...
steamsignature.com/status/english/76561198019046882.png

i.imgur.com/EzcOjDS.png
My brain is open.
- Paul Erdős
 
Send Private Message
ZA Googly
#5 Print Post
Posted on 01/02/2011 11:00:19
User Avatar

Numpty


Posts: 1251
Joined: 14.11.10

Hmmm... I didn't totally understand the scripts themselves... but you sound like you know what you are doing so.. I'll leave this up to the leader.
I hate lag
 
Send Private Message
ZA numpty
#6 Print Post
Posted on 01/02/2011 11:42:15
User Avatar

ShawnPeezy


Posts: 4430
Joined: 16.11.10

... OW MY HEAD HURTS. i have no clue what this is. im so confused. lets let slim deal with all the techy stuff.
 
Send Private Message
ZA Ice
#7 Print Post
Posted on 01/02/2011 12:40:05
User Avatar

Wanker


Posts: 599
Joined: 16.11.10

Eh, I've been wanting a server tool to help control the server for zombies when there are noobs, but that's up to Slimy to get it or not.

i855.photobucket.com/albums/ab117/iceyhell13/IceFrosty.jpg
 
Send Private Message
FC_Cookie
#8 Print Post
Posted on 01/02/2011 12:54:15
User Avatar

Super Admin


Posts: 358
Joined: 20.11.10

who is oxide???
 
Send Private Message
ZA Ice
#9 Print Post
Posted on 01/02/2011 12:59:17
User Avatar

Wanker


Posts: 599
Joined: 16.11.10

Random guy who made a zombie server scripting tool and is, from the sound of it, offering it to us by asking us what we want in it.

i855.photobucket.com/albums/ab117/iceyhell13/IceFrosty.jpg
 
Send Private Message
FC_SlimJim
#10 Print Post
Posted on 01/02/2011 13:39:52
Super Admin


Posts: 4725
Joined: 14.11.10

Oxide is a halo programmer, once in SS. ive known & used his products for a while now. also, show some respect for alot of the tools that we use (more so me on behalf of you) are designed & made by oxide
 
Send Private Message
ZA Ice
#11 Print Post
Posted on 01/02/2011 13:44:56
User Avatar

Wanker


Posts: 599
Joined: 16.11.10

Well he is random to me because I've never seen him before.

i855.photobucket.com/albums/ab117/iceyhell13/IceFrosty.jpg
 
Send Private Message
FC_Cookie
#12 Print Post
Posted on 01/02/2011 15:06:50
User Avatar

Super Admin


Posts: 358
Joined: 20.11.10

FC_SlimJim wrote:
Oxide is a halo programmer, once in SS. ive known & used his products for a while now. also, show some respect for alot of the tools that we use (more so me on behalf of you) are designed & made by oxide


ok, thnx slim, i never heard about him and he just popped up so i was curious Wink
 
Send Private Message
RazNinjaMike
#13 Print Post
Posted on 01/02/2011 19:37:48
User Avatar

Moderator


Posts: 4586
Joined: 20.11.10

nice oxide great job!
 
Send Private Message
Rabidtaco
#14 Print Post
Posted on 01/02/2011 21:54:00
Senior Member


Posts: 305
Joined: 16.11.10

respect oxide. is that really how halo is programmed? I get the booleans and voids and stuff because I know a tiny bit, but does the code really look like that?
Member of ZÅ Feb. 19th, 2010 - May 15th, 2011
memedepot.com/uploads/0/406_what_the_fark_is_this.jpg
24.media.tumblr.com/tumblr_l4zjqarbQP1qca3dmo1_400.jpg
 
Send Private Message
FC_SlimJim
#15 Print Post
Posted on 01/02/2011 22:02:39
Super Admin


Posts: 4725
Joined: 14.11.10

no, hes using a diff system. lua in fact is most famously used with video games like Garry's Mod. but its also used heavily in many applications.
 
Send Private Message
ZA 2
#16 Print Post
Posted on 01/02/2011 23:56:29
User Avatar

Numpty


Posts: 1173
Joined: 15.11.10

Sounds cool.. and long. lol. nice anyway
i904.photobucket.com/albums/ac247/ApplePie111/delete-windows-yes.png

i1089.photobucket.com/albums/i345/AJRead2/ocelotbannerjpg.jpg
 
http://numberstunts.wetpaint.com Send Private Message
oxide
#17 Print Post
Posted on 01/03/2011 01:19:06
Newbie


Posts: 6
Joined: 02.01.11

Halo is programmed in C++ (like Phasor), the above code is some C++ function declarations. Well, tbh they're not really C++ declarations as I didn't include the argument types. Below is a C++ function.. Well more C as C++ is object oriented.

// This function gets a player's object data
LPBYTE GetObjectAddress(int mode, DWORD reqData)
{
// Make sure request data is valid
if (reqData == -1)
return 0;

WORD hi = (reqData >> 16) & 0xFFFF;
WORD lo = (reqData & 0xFFFF);

LPBYTE lpObjectList = (LPBYTE)*(DWORD*)UlongToPtr(0x744C18);

if (lo < (*(WORD*)(lpObjectList + 0x20)))
{
LPBYTE objPtr = (LPBYTE)ULongToPtr(*(DWORD*)(lpObjectList + 0x34) + (*(WORD*)(lpObjectList + 0x22) * lo));

if (!*(WORD*)objPtr)
return 0;

LPBYTE finalPtr = 0;
if (!hi)
finalPtr = objPtr;
else if (hi == *(WORD*)objPtr)
finalPtr = objPtr;

if (!finalPtr)
return 0;

if (mode < (1 << finalPtr[2]))
return (LPBYTE)*(DWORD*)UlongToPtr(finalPtr + 8);
}

return 0;
}
 
Send Private Message
ninja
#18 Print Post
Posted on 01/03/2011 12:42:34
User Avatar

Super Admin


Posts: 4174
Joined: 15.11.10

I agree with the above.
steamsignature.com/status/english/76561198019046882.png

i.imgur.com/EzcOjDS.png
My brain is open.
- Paul Erdős
 
Send Private Message
ZA Wunder Rofl
#19 Print Post
Posted on 01/03/2011 20:14:28
User Avatar

Member


Posts: 206
Joined: 16.11.10

what... ~hmm~
i.imgur.com/1c2MQ.jpg
 
Send Private Message
FC Wings
#20 Print Post
Posted on 01/03/2011 20:25:44
User Avatar

Super Admin


Posts: 4425
Joined: 16.11.10

i get all of it exept this
WORD hi = (reqData >> 16) & 0xFFFF;
WORD lo = (reqData & 0xFFFF);
orig00.deviantart.net/ffbe/f/2014/070/6/b/minato_namikaze_by_danzt-d79vc0c.png
steam.mmosvc.com/76561198043580328/v1.png
 
Send Private Message
Jump to Forum:
 
imageimage
image Login image
 
Username

Password



Not a member yet?
Click here to register.

Forgotten your password?
Request a new one here.
 
image image
image Shoutbox image
 
You must login to post a message.

Drkinferno
04/30/2026 16:29:13
not dead

stunt1man
02/17/2026 17:22:06
Still alive. ~B_Slap~

Hobo
02/16/2026 21:44:26
Wassup gang ~craptacular~

stunt1man
01/30/2026 12:29:22
Anytime I post something in the thread, it's not visible.

stunt1man
01/27/2026 20:09:23
The ISP blocked you.

Target
12/29/2025 21:50:19
Ditto! Grin

stunt1man
12/28/2025 16:40:54
Happy new year. ~noob~

Target
11/27/2025 12:34:23
Happy Thanksgiving :3

Target
10/31/2025 09:30:28
Happy Halloween everyone! Smile

Target
10/25/2025 09:09:20
https://www.youtub
e.com/watch?v=AMGJ
7OMqyvI woah

stunt1man
10/24/2025 16:32:18
Hola Papi!

Link
09/29/2025 23:37:58
OMG HI GUYS!!! I was able to finally log in after so many years!!! I hope everyone is doing well in life! Man, time flies!

RazNinjaMike
09/26/2025 06:40:34
if you dont got discord, go get it. its great for chatting as well Cool

stunt1man
09/21/2025 11:10:02
~Nana~

Drkinferno
09/15/2025 20:05:42
no, I log in time to time

stunt1man
09/07/2025 12:26:37
~argue~

Innervision
08/30/2025 14:52:46
Hope everyone is doing well, good ol shoutbox lol Smile

stunt1man
07/31/2025 18:41:06
I had replied to the thread and it broke. ~ban?~

FC_SlimJim
06/22/2025 20:43:11
idk what happened with that thread cause i cant access it either lol

Drkinferno
05/25/2025 20:05:26
I can't access it either lol

 
image image
image image