Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Topics - soulshaker

#1
Well it was said before by devs that player.Gravity will not be added, so is it possible to add any particular function which will stop vehicles to float in air(when gravity is changed to low)? Because its almost impossible to drive vehicles when server gravity is set to low :/
#2
Videos & Screenshots / Super Punches
Sep 12, 2015, 07:49 PM
Note:-
This video is made just for fun. First of all this is not any kind of hack officially because, you can't use it simply against someone. The opponent must have the modified file to enjoy this punches, so if you are thinking that you are going to use this as an hack, it will be just a waste of time :P

http://youtu.be/ccLTj-hbGbc

http://youtu.be/2CEs1hOpp4I

#3
Snippet Showroom / Avoiding "!" Prefix
Sep 07, 2015, 12:24 PM
As we know that we generally use "/" prefix now but some players still tries to use "!" prefix. So to avoid that, we can tell players that "!" prefix is removed from your server(if you really removed it) like this:-



function onPlayerChat( player, text )
{
    local msg
    if ( text ) msg = text.tolower();
        {
        if ( text )
        { 
                if ( text.slice( 0, 1 ) == "!" )
                {
                        local i = NumTok( text, " " ), xp = null;
                       
                        if ( i == 1 ) MessagePlayer("[#EE3B3B]>> Error - [#FFFFFE]The server uses / prefix for commands. Try [#00EEEE]/"+ text.slice( 1 ) ,player);
                }
                }
        }             
        return 1;
}
 
function NumTok(string, separator)
{
    local tokenized = split(string, separator);
    return tokenized.len();
    local s = split(string, separator);
    return s.len();
}
#4
Important:-

I don't own or made the tracks or train model.

Tracks:-
X-Seti
http://www.gtagarage.com/mods/show.php?id=23002


Train:-
Ported for VC:MP by @sseebbyy (I don't know the original creator of the model)

Screens:-








Note:- Installation instruction is given in the file

Update:-

#1 Added Automatic Train System.

#2 Added bridge at the back of stadium.

Thanks to @Kusanagi for providing this
#5
Support / Problem with Screenshots!!
Aug 27, 2015, 12:21 PM
The Screenshots are appearing blank like this from somedays.


I did a clean installation of VC and VC:MP today, but its still same :/
#6
I noticed this bug many times but I failed to record everytime. This time recorded

https://youtu.be/XbyiW7umUes
#7
Snippet Showroom / Real Speedometer!!
Apr 09, 2015, 09:33 AM
Made this couple of months ago, so though posting here
http://pastebin.com/MX8UsNghEnjoy!
#8
Snippet Showroom / Automatic Gate
Feb 28, 2015, 06:22 AM
Well, there is already a automatic gate function released, but for me its not automatic(you have to press keys to open/close gate). So I tried making something which is really automatic.

///VCMP 0.4 Automatic gate system by SouLy^///
Thanks to Gudio for helping me with onPlayerPart function :D
 
This function adds a automatic gate at mansion. Enjoy
 
 
function onScriptLoad()
{
        gate <- CreateObject( 310, 1, -276.618, -495.992, 10.2778, 255 );
        gate_timer <- NewTimer("gatesystem", 500, 0 );
        gate_timer.Paused = true;
        timer_status <- false;
}
 
function onPlayerJoin( player )
{
        if(timer_status == false)
        {
                gate_timer.Paused = false;
                timer_status = true;
                print("Timer Resumed");
        }
}
 
function onPlayerPart( player, reason )
{
        if ( GetPlayers()-1 == 0 )
        {
                gate_timer.Paused = true;
                timer_status = false;
                print( "Timer Paused" );
        }
}
function gatesystem()
{
    local gatestatus = 0;
        for ( local i = 0; i < GetMaxPlayers(); i++ ) 
        {
        local player = FindPlayer( i );
        if ( player )
        {
            if ( player.IsSpawned )
            {
                if ( InPoly( player.Pos.x, player.Pos.y, -276.2,-503.462,-268.675,-502.296,-268.887,-488.42,-276.471,-487.991 ) ) gatestatus = 1;                     
            }
        }
    }
        if ( gatestatus == 1 ) gate.MoveTo( Vector( -268.576, -495.99, 10.2778 ), 2800 );
    else gate.MoveTo( Vector( -276.618, -495.992, 10.2778 ), 2800 );     
}
Pastebin
#9
First of all, this Function is made by Stormeus( I got from public beta Script). I just extracted this function from the script. So I thought posting it here. Hope it might be useful for others :)

====Installation====
 
http://s14.postimg.org/u1skhm2q5/hint_spectate.png
http://s14.postimg.org/cagy35nbh/hint_specmenu.png
 
Put the hint_spectate.png and hint_specmenu.png in /store/sprites folder
 
///Official Events///
 
Global Variables:-
 
BIND_SPEC_TOGGLE      <- null;
BIND_SPEC_NEXT        <- null;
BIND_SPEC_PREV        <- null;
 
SPRITE_SPECHINT       <- null;
SPRITE_SPECTATEMENU   <- null;
 
function onScriptLoad()
{
        SPRITE_SPECHINT = CreateSprite("hint_spectate.png", -150, -384, 0, 0, 0, 255);
        SPRITE_SPECTATEMENU = CreateSprite("hint_specmenu.png", -220, -384, 0, 0, 0, 255);
        BIND_SPEC_TOGGLE      = BindKey( true, 0x53, 0, 0 );
        BIND_SPEC_NEXT        = BindKey( true, 0x27, 0, 0 );
        BIND_SPEC_PREV        = BindKey( true, 0x25, 0, 0 );
}
 
function onPlayerRequestClass( player, classID, team, skin )
{
        if(player.SpectateTarget == null)
        SPRITE_SPECHINT.ShowForPlayer(player);
        else if(player.SpectateTarget == null)
        {
        return 1;
        }
}
 
function onPlayerSpawn( player )
{
player.SpectateTarget = null;
SPRITE_SPECHINT.HideFromPlayer(player);
SPRITE_SPECTATEMENU.HideFromPlayer(player);
}
 
function onKeyDown( player, key )
{
if ( key == BIND_SPEC_NEXT )
        {
                if( player.SpectateTarget != null && !player.Spawned )
                        {
                                local pTargetID = player.SpectateTarget.ID;
                                local pTargetFind = pTargetID + 1;
                                local pNewTarget = null;
 
                                while(pNewTarget == null && pTargetFind != pTargetID)
                                {
                                        if(pTargetFind > GetMaxPlayers() - 1)
                                                pTargetFind = 0;
 
                                        pNewTarget = FindPlayer(pTargetFind++);
                                        if(pNewTarget != null && !pNewTarget.Spawned)
                                                pNewTarget = null;
                                }
 
                                if(pNewTarget == null || pNewTarget.ID == pTargetID)
                                        ClientMessage( "[#ed4242]Error: [#e9e9e9]No one else can be spectated.", player, 0, 0, 0 );
                                else
                                {
                                        player.SpectateTarget = pNewTarget;
                                        local szMsg = "[#e9e9e9]You are now spectating [#80eb7a]" + pNewTarget.Name + " (" + pNewTarget.ID + ")";
                                        MessagePlayer(szMsg, player);
                                }
 
                                return;
                        }
        }
if ( key == BIND_SPEC_PREV )
        {
                if( player.SpectateTarget != null && !player.Spawned )
                        {
                                local pTargetID = player.SpectateTarget.ID;
                                local pTargetFind = pTargetID - 1;
                                local pNewTarget = null;
 
                                while(pNewTarget == null && pTargetFind != pTargetID)
                                {
                                        if(pTargetFind < 0)
                                                pTargetFind = GetMaxPlayers() - 1;
 
                                        pNewTarget = FindPlayer(pTargetFind--);
                                        if(pNewTarget != null && !pNewTarget.Spawned)
                                                pNewTarget = null;
                                }
 
                                if(pNewTarget == null || pNewTarget.ID == pTargetID)
                                        ClientMessage( "[#ed4242]Error: [#e9e9e9]No one else can be spectated.", player, 0, 0, 0 );
                                else
                                {
                                        player.SpectateTarget = pNewTarget;
                                        local szMsg = "[#e9e9e9]You are now spectating [#80eb7a]" + pNewTarget.Name + " (" + pNewTarget.ID + ")";
                                        MessagePlayer(szMsg, player);
                                }
                               
                                return;
                        }
        }
if ( key == BIND_SPEC_TOGGLE )
        {
                        if(!player.Spawned)
                        {
                                if(player.SpectateTarget != null)
                                {
                                        SPRITE_SPECTATEMENU.HideFromPlayer(player);
                                        SPRITE_SPECHINT.ShowForPlayer(player);
                                        player.SpectateTarget = null;
                                }
                                else
                                {
                                        local pTargetID = 0;
                                        local pNewTarget = null;
                               
                                        while(pNewTarget == null && pTargetID < GetMaxPlayers())
                                        {
                                                pNewTarget = FindPlayer(pTargetID++);
                                                if(pNewTarget != null && !pNewTarget.Spawned)
                                                        pNewTarget = null;
                                        }
                               
                                        if(pNewTarget == null)
                                                ClientMessage( "[#ed4242]Error: [#e9e9e9]No one can be spectated at this time.", player, 0, 0, 0 );
                                        else
                                        {
                                                player.SpectateTarget = pNewTarget;
                                                local szMsg = "[#e9e9e9]You are now spectating [#80eb7a]" + pNewTarget.Name + " (" + pNewTarget.ID + ")";
                                                MessagePlayer(szMsg, player);
 
                                                SPRITE_SPECTATEMENU.ShowForPlayer(player);
                                                SPRITE_SPECHINT.HideFromPlayer(player);
                                        }
                                }
 
                                return;
                        }
        }
}
#10
Currently, In the vcmp 0.4 client when a player starts it for the first time and tries to join a server, the nickname of player is "UnknownPlayer" by default and then the client asks the player to change nickname or not. My suggestion is that can the nickname be blank like of 0.3 client so that it will be compulsory to put a nick?
#11
Videos & Screenshots / Custom Train test :D
Dec 02, 2014, 01:51 PM
As seby gave me the model of train, so i thought using it today :D

http://youtu.be/GRqNMhgdHpM
#13
Videos & Screenshots / Walking on air
Oct 27, 2014, 09:59 AM
Don't know how it happened, maybe developers can tell us something about this

https://www.youtube.com/watch?v=MWnbGW2ir-Y
#14
Closed Bug Reports / [BUG] In GetHandlingData
Oct 25, 2014, 01:07 PM
<~SouLy^> !exe Message(FindPlayer(0).Vehicle.GetHandlingData(1));
<&LoW> Error:the index 'GetHandlingData' does not exist
<~SouLy^> !exe Message(FindPlayer(0).Vehicle.GetHandlingData());
<&LoW> Error:the index 'GetHandlingData' does not exist
#15
Servers / [0.4] Low Gravity Server
Oct 25, 2014, 08:10 AM

Server name: [0.4] Low Gravity Server[LG]
IP: 54.169.211.18:8192
Mode: Low Gravity
Forum: Under Construction
IRC : #LG @ GTAnet
Scripter: ThunderStorm
Developer: Souly^

Like vcmp 0.3 we have made low gravity based server for vcmp 0.4 also. Low gravity game mode is supposed to give players a great and new kind of fun while playing. Like 0.3 we have added prop system(this time more props are added) and vehicle system.

Known Bug:-

Cars fly due to low gravity, because in 0.4 a function doesn't exist still now(PLAYER.GRAVITY). Still we are finding ways to fix it :)
#16
Servers / |0.4| Ethical DeathMatch
Oct 20, 2014, 04:17 PM
Server name: |0.4|Ethical DeathMatch
IP: 188.165.86.50:8192
Mode: DeathMatchv3.1
Forum:- www.vcmp.in
IRC :- #EDM04 @ LUNet/center]
Scripter:- Human, SouLy^
Credits:- Thunderstorm,KP

For now we have only converted the 0.3 script into 0.4, and more functions will be added soon. We are using out old database of EDM 0.3 so that players will not need to register again who are already registered with our 0.3 server before

Available commands:-

register
login
newpassword
nogoto
report
fps
info
rules
admins
stats
wep
level
clanstats (shows clanstats of a registered clan)
ping
goto
hp
arm
fight (3 different battlezones to play)
leave
heal
spree
spawnloc
spawnwep
disarm
host
cd
car
eject
fix
topclan (Show top 5 registered clan according to stats)
topkillers (Shows top 5 killers according to stats)
anim
changeskin
paint
cwep/customwep

hotkeys added are:-

I - Used for nitro while on vehicle
Y - Used for boost jump while on vehicle
H - Used for Healing
P - Fixing vehicle
K - To see commands list
L - Flip while on vehicle
0 - Instant brake while on vehicle
Note:- Clans will be registered on request in forum by clan owners/managers/leaders
Please report bugs in our forum so that we can fix it.

Some videos related to server:-

https://www.youtube.com/watch?v=xHAiRGT7h8I
https://www.youtube.com/watch?v=apL20tjRtrA
https://www.youtube.com/watch?v=xTJRCm_HVzU
https://www.youtube.com/watch?v=GRqNMhgdHpM
Enjoy!! :)


#17
Support / Player.gravity not added?
Oct 20, 2014, 04:11 PM
well is there any function 0.4 like player.gravity which was in 0.3?
#18
Hello all.

As we know that there are many places like lovefist, vcn building, bloodring, etc which are  inaccessible in vcmp 0.4, so i made this function to make them work just like 0.3 using pickups.

Add this on your server.conf file before any pickup:-
<Pickup model="383" world="1" x="-935.85" y="-351.315" z="17.8038"/>
<Pickup model="383" world="1" x="-936.923" y="-351.838" z="7.22692"/>
<Pickup model="383" world="1" x="-557.433" y="782.167" z="22.8768"/>
<Pickup model="383" world="1" x="-551.781" y="787.953" z="97.5104"/>
<Pickup model="383" world="1" x="142.726" y="-1372.82" z="10.432"/>
<Pickup model="383" world="1" x="139.562" y="-1369.64" z="13.1827"/>
<Pickup model="383" world="1" x="531.76" y="-118.642" z="13.337"/>
<Pickup model="383" world="1" x="531.655" y="-131.936" z="32.5095"/>
<Pickup model="383" world="1" x="475.792" y="30.4263" z="12.0714"/>
<Pickup model="383" world="1" x="462.603" y="30.3705" z="30.9712"/>
<Pickup model="383" world="1" x="-893.381" y="1054.55" z="15.6737"/>
<Pickup model="383" world="1" x="-940.18" y="1077.63" z="11.0946"/>
<Pickup model="383" world="1" x="-829.876" y="1309.94" z="11.5467"/>
<Pickup model="383" world="1" x="-813.565" y="1354.24" z="66.4603"/>
<Pickup model="383" world="1" x="-1090.55" y="1311.23" z="9.50517"/>
<Pickup model="383" world="1" x="-1443.39" y="936.094" z="262.411"/>
<Pickup model="383" world="1" x="-1089.59" y="1351.05" z="9.50517"/>
<Pickup model="383" world="1" x="-1414.77" y="1155.04" z="267.429"/>
<Pickup model="383" world="1" x="-410.452" y="1118.05" z="11.0709"/>
<Pickup model="383" world="1" x="-449.024" y="1128.07" z="56.6909"/>
<Pickup model="383" world="1" x="-448.446" y="1249.33" z="11.767"/>
<Pickup model="383" world="1" x="-448.35" y="1249.3" z="77.3986"/>
<Pickup model="383" world="1" x="-874.715" y="1159.56" z="11.1825"/>
<Pickup model="383" world="1" x="-877.507" y="1160.53" z="17.8152"/>
<Pickup model="383" world="1" x="-1108.33" y="1331.05" z="20.1156"/>
<Pickup model="383" world="1" x="-1426.24" y="1507.62" z="302.902"/>
<Pickup model="383" world="1" x="-892.953" y="1048.69" z="15.6737"/>
<Pickup model="383" world="1" x="-893.477" y="1050.26" z="75.8666"/>

and

Add this function in your script:-
/*
VCMP 0.4 TelePickups Script
*/

function onPickupPickedUp( player, pickup )
{
 switch( pickup.ID )
  {
case 0:
player.Pos = Vector( -933.277, -351.746, 7.22692 ); // To bank locker
break;
case 1:
player.Pos = Vector( -933.531, -351.39, 17.8038 ); // From bank locker
break;
case 2:
player.Pos = Vector( -555.477, 788.2, 97.5104 ); // To Office Buliding Lift(UP)
break;
case 3:
player.Pos = Vector( -562.089, 782.275, 22.8768 ); // To Office Buliding Lift(DOWN)
break;
case 4:
player.Pos = Vector( 140.503, -1366.83, 13.1827 ); // To Lawyers Office
break;
case 5:
player.Pos = Vector( 145.115, -1373.62, 10.432 ); // From Lawyers Office
break;
case 6:
player.Pos = Vector( 531.82, -127.311, 31.8522 ); // To Roof access near malibu #1
break;
case 7:
player.Pos = Vector( 531.851, -111.883, 10.7477 ); // From Roof access near malibu #1
break;
case 8:
player.Pos = Vector( 456.443, 30.3307, 34.8713 ); // To Roof access near malibu #2
break;
case 9:
player.Pos = Vector( 481.619, 30.4486, 11.0712 ); // From Roof access near malibu #2
break;
case 10:
player.Pos = Vector( -943.87, 1077.19, 11.0946 ); // To Lovefist
break;
case 11:
player.Pos = Vector( -888.268, 1054.37, 14.689 ); // From Lovefistcase
break;
case 12:
player.Pos = Vector( -820.836, 1355.72, 66.4525 ); // To Roof Access in Downtown #1
break;
case 13:
player.Pos = Vector( -828.593, 1304.96, 11.5887 ); // From Roof Access in Downtown #1
break;
case 14:
player.Pos = Vector( -1423.86, 941.064, 260.276 ); // To Bloodring
break;
case 15:
player.Pos = Vector( -1088.61, 1312.74, 9.50517 ); // From Bloodring
break;
case 16:
player.Pos = Vector( -1412.4, 1159.08, 266.689 ); // To Racetrack(Stadium)
break;
case 17:
player.Pos = Vector( -1086.57, 1352.84, 9.50517 ); // From Racetrack(Stadium)
break;
case 18:
player.Pos = Vector(  -445.71, 1127.11, 56.6909 ); // To VCN Building
break;
case 19:
player.Pos = Vector( -408.424, 1114.92, 11.0709 ); // From VCN Building
break;
case 20:
player.Pos = Vector( -444.803, 1253.35, 77.4241 ); // To Roof Access in Downtown #2
break;
case 21:
player.Pos = Vector( -449.452, 1252.74, 11.767 ); // From Roof Access in Downtown #2
break;
case 22:
player.Pos = Vector( -880.359, 1159.52, 17.8184 ); // To V Rock(Near Lovefist)
break;
case 23:
player.Pos = Vector( -872.045, 1161.86, 11.16 ); // From V Rock(Near Lovefist)
break;
case 24:
player.Pos = Vector( -1332.08, 1453.91, 299.146 ); // To Dirtring
break;
case 25:
player.Pos = Vector( -1105.68, 1333.03, 20.07 ); // From Dirtring
break;
case 26:
player.Pos = Vector( -890.945, 1066.15, 75.8666 ); // To Lovefist roof
break;
case 27:
player.Pos = Vector( -887.988, 1046.99, 14.4515 ); // From Lovefist roof
break;
return0;
  }
}

Thanks to seby for giving me the idea to make it :D
Well if you find anymore locs which are not accessible in vcmp 0.4 but are accessible in vcmp 0.3, you can reply here, i will add them too :)

Enjoy :)
#19
Changeskin:-

if ( cmd == "changeskin" )
    {
        if ( !player.IsSpawned ) MessagePlayer( "[#EE3B3B]You have to be spawned to use this command.", player );
        else if ( !text ) MessagePlayer( "[#FFFFFE]Syntax:- /" + cmd + "[#EE3B3B] <ID/SkinName>", player );
        else if( IsNum(text) )
{
player.Skin = text.tointeger();
         MessagePlayer( "[#66CD00]Skin changed to: " + GetSkinName( player.Skin ), player );
        }
else
         {
local skin_id = GetSkinID(text);
         if (skin_id < 0) MessagePlayer( "[#EE3B3B]Could not identify the specified skin name.", player );
else
         {
player.Skin = skin_id;
MessagePlayer( "[#66CD00]Skin changed to: " + GetSkinName( player.Skin ), player );
}
}
    }

Paint1(Vehicle Colour 1):-

if ( cmd == "paint1" )
                {
                    if ( !player.IsSpawned ) MessagePlayer( "[#EE3B3B]You have to be spawned to use this command", player );
                        else if ( !player.Vehicle ) MessagePlayer( "[#FFFFFE]Error: [#EE3B3B]You must be in a vehicle to use this command", player );
                        else if ( !text ) MessagePlayer( "[#FFFFFE]Syntax:- /" + cmd + "[#EE3B3B] <ID> (Id must be between 0 to 94)", player );
                        else if ( !IsNum( text ) ) MessagePlayer( "[#FFFFFE]Error: [#EE3B3B]The color ID should be in integer/number.", player );
                        else if ( text.tointeger() > 94 ) MessagePlayer( "[#FFFFFE]Syntax:- /" + cmd + "[#EE3B3B] <ID> (Id must be between 0 to 94)", player );
                        else
                        {
                         player.Vehicle.Colour1 = text.tointeger();
                         MessagePlayer( "[#66CD00]You have change colour of your vehicle", player );
                        }
                }

Paint2(Vehicle Colour 2):-

if ( cmd == "paint2" )
                {
                    if ( !player.IsSpawned ) MessagePlayer( "[#EE3B3B]You have to be spawned to use this command", player );
                        else if ( !player.Vehicle ) MessagePlayer( "[#FFFFFE]Error: [#EE3B3B]You must be in a vehicle to use this command", player );
                        else if ( !text ) MessagePlayer( "[#FFFFFE]Syntax:- /" + cmd + "[#EE3B3B] <ID> (Id must be between 0 to 94)", player );
                        else if ( !IsNum( text ) ) MessagePlayer( "[#FFFFFE]Error: [#EE3B3B]The color ID should be in integer/number.", player );
                        else if ( text.tointeger() > 94 ) MessagePlayer( "[#FFFFFE]Syntax:- /" + cmd + "[#EE3B3B] <ID> (Id must be between 0 to 94)", player );
                        else
                        {
                         player.Vehicle.Colour2= text.tointeger();
                         MessagePlayer( "[#66CD00]You have change colour of your vehicle", player );
                        }
                }
Simple commands, but i thought these may help some people :)