Author Topic: Script Core Suggestions  (Read 71851 times)

0 Members and 1 Guest are viewing this topic.

Offline EnEsCe

  • Retired Soldat Developer
  • Flamebow Warrior
  • ******
  • Posts: 3101
  • http://enesce.com/
    • [eC] Official Website
Script Core Suggestions
« on: April 27, 2008, 01:20:40 am »
If anyone has decent ideas for the next release of the Soldat Server Script Core, now is the time to voice them. I feel that the Script Core needs abit of love.
So please, post any suggestions you have. Make sure you explain every aspect of your idea, and examples will increase the chances of your idea being added. Any dumb or unnecessary ideas will be ignored.

ONLY REPLY TO THIS THREAD WITH AN IDEA ~ NOT A COMMENT REGARDING SOMEONE ELSE'S IDEA!

Offline Toumaz

  • Veteran
  • *****
  • Posts: 1906
Re: Script Core 2.6.4 Suggestions
« Reply #1 on: April 27, 2008, 02:19:43 am »
OnRoundStart and OnRoundEnd: think the names explain it, but two procedures that would be called upon round start and round end in survival mode. This would make scripting related to survival mode a lot easier, without having to mess around with timer variables.

Offline jrgp

  • Administrator
  • Flamebow Warrior
  • *****
  • Posts: 5036
Re: Script Core 2.6.4 Suggestions
« Reply #2 on: April 27, 2008, 02:43:57 am »
Ability to control the screen's darkness at any given time so you can have it get dark, stay dark for x amount of time, then return to the normal level of brightness again. Might be useful for certain kinds of maps and custom gamemodes.
There are other worlds than these

Offline Avarax

  • Veteran
  • *****
  • Posts: 1529
    • Official Hexer & MMod site
Re: Script Core 2.6.4 Suggestions
« Reply #3 on: April 27, 2008, 03:20:05 am »
Make /gmuted players still call the OnPlayerSpeak event.

Adjustable volume for playing the WAV files

Unlock the blocked bullettypes for CreateBullet
I like to have one Martini
Two at the very most
Three I'm under the table
Four I'm under the host

Offline shantec

  • Soldier
  • **
  • Posts: 140
  • Get ANGREH!!
Re: Script Core 2.6.4 Suggestions
« Reply #4 on: April 27, 2008, 09:32:27 am »
Here's my idea: you would be able to use Objects in CreateBullet... like a Nova of berserker bonuses xD
(Okay that's stupid... it probably will be ignored :D )

Another: you would be able to blow up grenade at any second, or raise the "fuse time" (err... grenade that blows up when someone hits it o.O)


Dun worry, that wasn't all =)
Also Known As REIMA


Lol Happles (happy apples)

Offline BombSki

  • Flagrunner
  • ****
  • Posts: 927
    • Climbing-soldiers.net
Re: Script Core 2.6.4 Suggestions
« Reply #5 on: April 27, 2008, 10:05:59 am »
There were some nice suggestions in this thread:
http://forums.soldat.pl/index.php?topic=19565.0

Offline JFK

  • Camper
  • ***
  • Posts: 255
    • My TraxInSpace Account
Re: Script Core 2.6.4 Suggestions
« Reply #6 on: April 27, 2008, 10:39:48 am »
Make /gmuted players still call the OnPlayerSpeak event.
Plus a way to find out that a player is gmuted, like GetPlayerStat(ID, 'Gmuted')

And i'm just gonna try this:
- Variant Type supporting booleans (see the end of my huge double post)
- Pointers :D... plz?
- Any way to get the X-Y coordinates (in a map) of a players cursor

Also: great new features already. I do hope the wav-files can be stereo and are allowed to be quite big :)
Come join: EliteCTF
Listen to: My Music

Offline DorkeyDear

  • Veteran
  • *****
  • Posts: 1507
  • I also go by Curt or menturi
Re: Script Core 2.6.4 Suggestions
« Reply #7 on: April 27, 2008, 11:54:57 am »
I'll throw everything that comes out there:

Assignment of player's bullets to IDs as CreateBullet does -- (using GetObjectStat, SetObjectStat them)

procedure OnBulletCreation(Id, Owner: byte);
function OnBulletDestruction(Id, Owner: byte): boolean; (results if bullet will be destroyed or not)
(awful names for events, but can be changed to whatever sounds better)
Called when a bullet is created or destroyed.

SetObjectStat or GetObjectStat addons
Style: byte;
Active: boolean;
X: single;
Y: single;
Owner: byte;
VelX: single;
VelY: single;
HitM: single;
sStype: byte;

Having Ticks: cardinal by default on AppOnIdle, not integer (like GetTickCount(): cardinal i think)

KillObject(CreateBulletID); I thought this worked, but it didn't when I tested it....

Offline mar77a

  • Global Moderator
  • Veteran
  • *****
  • Posts: 1295
  • mad
    • random stuffs
Re: Script Core 2.6.4 Suggestions
« Reply #8 on: April 27, 2008, 12:31:13 pm »
ChangePlayerNick(ID: byte; New_Nickname: String) ;

EDIT: Toumaz -really- likes climbing walls of dicks
« Last Edit: April 27, 2008, 12:47:10 pm by mar77a »

Offline danmer

  • Camper
  • ***
  • Posts: 466
  • crabhead
Re: Script Core 2.6.4 Suggestions
« Reply #9 on: April 27, 2008, 12:45:26 pm »
add 'JoinPort' stat to the GetPlayerStat function plz

(obviously for ForwardClient , as now it's only possible on linux systems)

Offline DorkeyDear

  • Veteran
  • *****
  • Posts: 1507
  • I also go by Curt or menturi
Re: Script Core 2.6.4 Suggestions
« Reply #10 on: April 28, 2008, 02:33:10 pm »
GetPlayerStat(Id: byte; 'shirt'): longint; or 'main' (i dont know if it will be "red" if a player joins alpha, or if it will be the actual player's chosen color; whichever is the actual value that the server stores it as will be for the best probably)
GetPlayerStat(Id: byte; 'pants'): longint;
GetPlayerStat(Id: byte; 'skin'): longint;
GetPlayerStat(Id: byte; 'hair'): longint;
GetPlayerStat(Id: byte; 'jet'): longint; ('jets' is different than 'jet', or u could do 'jetcolor' or something like that, and for consistency, mayb add 'color' at the end for all other color-getting stat value as well; or "colour" :P)
returning colors of the specified thingy
GetPlayerStat(Id: byte; 'hairstyle'): byte;
GetPlayerStat(Id: byte; 'headstyle'): byte;
GetPlayerStat(Id: byte; 'chainstyle'): byte;

It really shouldn't be considered what they will be used for, but rather is it possible, and ease if implementing it.
« Last Edit: May 01, 2008, 05:22:56 am by DorkeyDear »

Offline Serial K!ller

  • Camper
  • ***
  • Posts: 408
    • Soldat Mods Archive
Re: Script Core 2.6.4 Suggestions
« Reply #11 on: April 28, 2008, 03:54:32 pm »
  • Dialog box that can be used to:
    - select/vote dialog that returns a chosen value  (popmenu(ID,"Option 1","Option 2","Option3","Boxname"))
    - input something (inputbox(ID,"Text","Boxname")(f.e. a login box for server with accounts)
    - display information in a box print(ID,"Text string","Boxname",timetostayon)
  • static flag(s) on map's that call an event when touched
    - f.e. base capture gamemode (would also need the ability to change it's color)
    - in spawn base where it opens a popup menu to select something (weapon, class, ...)
  • Some standard keys in soldat (f.e. actionkey1, actionkey2) that runs event on server (if it has scripting)
  • option to Load a mod (gfx,sfx,etc) on client if it is present and maybe ask the player to allow it
  • putinterfacegfx(x,y,alpha,...) places a graphic on the screen
  • putmapgrafix(x,y,alpha,...) places a graphic on map
  • Slow motion on all clients (Setspeed = 0,17) (like on the specialists)
« Last Edit: April 28, 2008, 04:24:36 pm by Serial K!ller »

Offline chutem

  • Veteran
  • *****
  • Posts: 1119
Re: Script Core 2.6.4 Suggestions
« Reply #12 on: April 28, 2008, 07:28:27 pm »
How about something you can put in a script like WaitUntil(AppOnIdle) that you can put in scripts and it pauses (not sleeps!)  the function where it is until the stated function is called.

And i'm not sure if you can or can't draw multiple DrawText's, because somewhere i read that kill messages overdraw other messages, but if you can't a suggestion would be that you can draw multiple DrawText's

Oh yeah, a procedure that clears text would be cool aswell.

And how Serial k!ller said you should make a putmapgrafix(x,y,alpha,...) which puts a graphic on the map, you should be able to draw text to a place on the map, (but keep the one that draws on screen of course).

And BTW all of the suggestions above this post so far are great :P

I think thats all for now ;)

1NK3FbdNtH6jNH4dc1fzuvd4ruVdMQABvs

Offline DorkeyDear

  • Veteran
  • *****
  • Posts: 1507
  • I also go by Curt or menturi
Re: Script Core 2.6.4 Suggestions
« Reply #13 on: April 29, 2008, 02:38:09 pm »
ForceAction(Action: byte);
case Action of
0: stop moving
1: move left
2: move right
3: jump
4: crouch
5: uncrouch
5: prone
6: unprone/stand
7: fire bullet
8: switch weapons
9: throw grenade

would require client changes afaik though

Offline chutem

  • Veteran
  • *****
  • Posts: 1119
Re: Script Core 2.6.4 Suggestions
« Reply #14 on: May 01, 2008, 09:30:36 pm »
Suggestion 5:
I think OnWeaponChange should be called when player reloads their weapon, and every weapon should have an ID so it would be like this OnWeaponChange(ID, PrimaryNum, SecondaryNum,PrimaryID, SecondaryID, Action: Byte), and the action would be what called the event e.g:

1 : Switches weapon (presses 'Q')
2 : Drops weapon
3 : Picks up weapon
4 : Picks weapon from respawn menu
5 : Reloads weapon
and any other thing you feel needs adding

And could you please put the contents of www.enesce.com/help/ into a single downloadable folder please?, it is a pain for me (and probably a few others) to get information, as I have dial-up and am not always connected to the internet, in fact I am almost never on the internet when writing scripts.

Suggestion 6:
Not relly a scriptig suggestion, but a suggestion nonetheless, when you release the new scriptcore you will make a list of new functions/events/changes, how about making a list of things that have been suggested here but didn't get done, a short sentence of why it wasn't done aswell, i.e, can't be done, stupid idea.
1NK3FbdNtH6jNH4dc1fzuvd4ruVdMQABvs

Offline shantec

  • Soldier
  • **
  • Posts: 140
  • Get ANGREH!!
Re: Script Core 2.6.4 Suggestions
« Reply #15 on: May 02, 2008, 01:49:45 am »
Some sort of idea:

ForceSpeak (or somekind... something...)
You would be able to force some player to speak anything :D
ForceSpeak(ID, text)   maybe :D
Also Known As REIMA


Lol Happles (happy apples)

Offline danmer

  • Camper
  • ***
  • Posts: 466
  • crabhead
Re: Script Core 2.6.4 Suggestions
« Reply #16 on: May 02, 2008, 05:17:13 am »
also, is it possible to make OnWeaponChange() call even if the player's weapons are identical?

Offline DorkeyDear

  • Veteran
  • *****
  • Posts: 1507
  • I also go by Curt or menturi
Re: Script Core 2.6.4 Suggestions
« Reply #17 on: May 02, 2008, 03:17:54 pm »
GetPlayerStat(Id: byte; 'TTime'): cardinal;
Returns the amount of time (in ticks) that a player has been in-game for
Ignore the fact that you can already get this number with a little scripting ^^ would make it slightly more ez to do some things

Offline Serial K!ller

  • Camper
  • ***
  • Posts: 408
    • Soldat Mods Archive
Re: Script Core 2.6.4 Suggestions
« Reply #18 on: May 03, 2008, 05:27:33 am »
event for double kill, multi kill, masta kill etc
f.e.

onkillbonus(ID,kills,...)
 if kills = 2 then
   playsound("Doublekill.wav",...)

...



« Last Edit: May 03, 2008, 05:29:04 am by Serial K!ller »

Offline Noober

  • Major(1)
  • Posts: 5
Re: Script Core 2.6.4 Suggestions
« Reply #19 on: May 03, 2008, 04:30:49 pm »
Ability to download sounds from a server.
And be able to play them when a player gets double kill or triple..etc