[HELP!!!]Some questions

YEA
✔️ HL Verified
Joined
Oct 31, 2014
Messages
201
Best answers
0
Location
CHINA
;DHey yo~ Nice to see you again! Recently I've been working on some new stuff of ESF, but I got these problems below, Please if one of these problems that you can solve, share me the way...:


1. How to set the SwoopSpeed and SwoopTime? (besides native setClientSWOOPTIME( Client, Float:Value ), because my ESF version is not based on ECX, and entity_set_float( id, EV_FL_fuser1, floatvalue) seems to be no use..)

2. How to set the Character Class on the score board? (I know this problem can be solved via editing client.dll, but this way is not that good)

3. How make a round FX that slowly increases the scale?

4. I'd like to make more stories in the ESF, so please let me know if these words are as genuine as an English speaker:
Vegeta: hehehe...I know how do I do to kill you! Only blow you to pieces can kill you!
Buu: en? emmm?....
Vegeta: Good-Bye, Bulma, Trunks.. and Kakarot...
Buu: awwwwww....
Vegeta: Haaaa~~~ BOMB!


This is the video, I'm just going to put the subtitles up for the Story mode:

[video]https://youtu.be/RAjXBc-p9VA[/video]


Thank you guys!!!!very very very much!!
 
Last edited:
NOT IN THE MANGA™
★ Black Lounger ★
✔️ HL Verified
🚂 Steam Linked
💻 Oldtimer
Joined
Jan 5, 2008
Messages
3,276
Best answers
0
Location
Lithuania
1. I believe you can't alter (or rather, increase) swoop speed. It's possible to alter the velocity, but it's a bad practice. I'm not sure how ESF does it natively, but I failed to achieve this via AMXX back when I tried. E.g. Kuririn's 2nd form has 350 speed -- more than anyone else -- but setting it to 350 on his normal form or for any other character will fail to provide the same speed. It only affects moving speed but not swooping. I also doubt ECX's functions for swoop speed/time do anything that affects swoop.

2. It is done by using some user message. ScoreInfo, perhaps?
 
Last edited:
YEA
✔️ HL Verified
Joined
Oct 31, 2014
Messages
201
Best answers
0
Location
CHINA
yes, if setting the velocity, the effect will look like a booster..Oh god..maybe besides this idea, i have no choice...

this function is alright: public client_PostThink(id){setClientSWOOPTIME(id,getClientSWOOPTIME(id)+500.0)} but only works in the ECX..wow ECX is really an amazing version -_-

im trying the ScoreInfo out :3
 
NOT IN THE MANGA™
★ Black Lounger ★
✔️ HL Verified
🚂 Steam Linked
💻 Oldtimer
Joined
Jan 5, 2008
Messages
3,276
Best answers
0
Location
Lithuania
this function is alright: public client_PostThink(id){setClientSWOOPTIME(id,getClientSWOOPTIME(id)+500.0)} but only works in the ECX..wow ECX is really an amazing version -_-
Does this allow you to swoop non-stop as long as you have ki?
 
YEA
✔️ HL Verified
Joined
Oct 31, 2014
Messages
201
Best answers
0
Location
CHINA
yes, it does!

--- edit ---

didnt find the match string...

public plugin_init()
{
register_clcmd("tt", "test")
register_message(get_user_msgid("ScoreInfo"), "test")
}

public test(id,id2,id3,id4)
{
client_print(id, print_chat, "%s || %s || %s || %s", id,id2,id3,id4)
client_print(id, print_chat, "%d || %d || %d || %d", id,id2,id3,id4)
client_print(id, print_chat, "%f || %f || %f || %f", id,id2,id3,id4)
}

1.jpg
 
NOT IN THE MANGA™
★ Black Lounger ★
✔️ HL Verified
🚂 Steam Linked
💻 Oldtimer
Joined
Jan 5, 2008
Messages
3,276
Best answers
0
Location
Lithuania
You need to use specific functions to read message arguments.
PHP:
#include <amxmodx>

new const MESSAGE[] = "ScoreInfo";

public plugin_init()
{
	register_plugin("User Message Test", "1.1", "hleV");
	
	register_message(get_user_msgid(MESSAGE), "@OnMessage");
}

@OnMessage(msg, dest, ent)
{
	if (ent)
		return;
		
	static text[1024];
	new len = formatex(text, charsmax(text), "-----^nMessage: %4d (%s)^nDestination: %5d^nEntity: %5d", msg, MESSAGE, dest, ent);

	for (new i = 1, args = get_msg_args(), str[32]; i <= args; i++)
	{
		switch (get_msg_argtype(i))
		{
			case ARG_BYTE: len += formatex(text[len], charsmax(text) - len, "^nArgument %6d (byte):	  %6d", i, get_msg_arg_int(i));
			case ARG_CHAR: len += formatex(text[len], charsmax(text) - len, "^nArgument %6d (char):	  %6d", i, get_msg_arg_int(i));
			case ARG_SHORT: len += formatex(text[len], charsmax(text) - len, "^nArgument %6d (short):  %6d", i, get_msg_arg_int(i));
			case ARG_LONG: len += formatex(text[len], charsmax(text) - len, "^nArgument %6d (long):	  %6d", i, get_msg_arg_int(i));
			case ARG_ENTITY: len += formatex(text[len], charsmax(text) - len, "^nArgument %6d (entity): %6d", i, get_msg_arg_int(i));
			case ARG_ANGLE: len += formatex(text[len], charsmax(text) - len, "^nArgument %6d (angle):  %6.1f", i, get_msg_arg_float(i));
			case ARG_COORD: len += formatex(text[len], charsmax(text) - len, "^nArgument %6d (coord):  %6.1f", i, get_msg_arg_float(i));
			case ARG_STRING:
			{
				get_msg_arg_string(i, str, charsmax(str));

				len += formatex(text[len], charsmax(text) - len, "^nArgument %d (string):	%s", i, str);
			}
		}
	}

	server_print(text, 0, 0, 0);
}
 
Last edited:
YEA
✔️ HL Verified
Joined
Oct 31, 2014
Messages
201
Best answers
0
Location
CHINA
you code is great!!! i have never used this way to write code!

These are the informations that i got(weird, still not found my character class string yet..but thanks for coding):
-----
Message: 75 (ScoreInfo)
Destination: 2
Entity: 0
Argument 1 (byte): 1
Argument 2 (short): 3
Argument 3 (short): 2
Argument 4 (short): 0
Argument 5 (short): 3
Argument 6 (shor
-----
Message: 75 (ScoreInfo)
Destination: 2
Entity: 0
Argument 1 (byte): 1
Argument 2 (short): 3
Argument 3 (short): 2
Argument 4 (short): 0
Argument 5 (short): 6
Argument 6 (shor
 
Last edited:
NOT IN THE MANGA™
★ Black Lounger ★
✔️ HL Verified
🚂 Steam Linked
💻 Oldtimer
Joined
Jan 5, 2008
Messages
3,276
Best answers
0
Location
Lithuania
It is not a string but class ID. ESF classes have IDs from 1 to 9, 10 being word "Random" in the scoreboard. ECX installation has an altered titles.txt file where words "Class" and "Random" are replaced with empty text, and ECX uses 10 as class ID in scoreboard for all classes to hide the title. This is because ESF has all class names hardcoded and ECX has many classes, so they chose to hide it in the scoreboard. Now I'm not sure which argument corresponds to player's class ID, however you can figure that out easily by switching class and seeing which number changes. I believe Boo class ID is 1 and Vegeta is 8.

Regarding swoop time, if you have ECX installed, this function allows to swoop infinitely:
PHP:
set_pdata_float(client, 320, 9999.9);
However, this does not work on vanilla ESF. Apparently ECX is handling swoop themselves (velocity), as apparent from the clunky way the character turns while swooping. I don't think it's possible to allow infinite swoop in ESF via simple data value alteration.
 
Last edited:
New Member
Joined
May 22, 2014
Messages
18
Best answers
0
Location
when you hear strange sound in the night you know
Jerry if you focus your work on CS 1.6 mod there's at least feint chance of few people playing it.
With modern tools provided by unreal... unity and soon source 2 you will have chance to make games and mods on whole new level than what's available under gold src.
Gold Src is waste of time in terms of productivity and ancient tools... and player base.
 
YEA
✔️ HL Verified
Joined
Oct 31, 2014
Messages
201
Best answers
0
Location
CHINA
dear me! are you sure this only works on ECX?.. i tried this on ESF123 and EVM, and succeeded...

public client_PostThink(id){set_pdata_float(id, 320, 9999.9)}//working while swooping.. where did you find this...

ClassID was successfully found!;D

swoopSpeed is a bit hard.. i'm just going to reset the velocity while the character is going forward..

--- edit ---
@Zombification
indeed! but i dont master Unity and VS.. a big plugin is enough for now...:D
 
Last edited:
NOT IN THE MANGA™
★ Black Lounger ★
✔️ HL Verified
🚂 Steam Linked
💻 Oldtimer
Joined
Jan 5, 2008
Messages
3,276
Best answers
0
Location
Lithuania
Forget what I said. I used client_PostThink() forward without including <engine> so it was never called.
Anyway, to avoid calling it many times per second (client_PostThink()), you should probably hook FM_EmitSound and do a swoop sound check. If true - set swoop time.

(I've also slightly altered the above code for "User Message Test", as it apparently caused the server to hang for a few seconds.)
 
Last edited:
The only Russian ESF fan
✔️ HL Verified
Joined
Dec 23, 2012
Messages
196
Best answers
0
Location
Moscow
4. I'd like to make more stories in the ESF, so please let me know if these words are as genuine as an English speaker:
Vegeta: hehehe...I know how do I do to kill you! Only blow you to pieces can kill you!
Buu: en? emmm?....
Vegeta: Good-Bye, Bulma, Trunks.. and Kakarot...
Buu: awwwwww....
Vegeta: Haaaa~~~ BOMB!
Please. Just don't.
 

Users who are viewing this thread

Top Bottom