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

Messages - AroliS^

#1
Community Plugins / NodeJS - Plugin for VCMP
Oct 21, 2024, 02:01 AM

Hi, Hows ya'all doing?

I'm continueing NewK5's nodejs project, now with a solid approach! Ready to be use!

This is the server setup, easy to use.
If this setup, do not work in ur os. You may have to write me
Discord: AroliSG
It was tested on win11&10


Here's the youtube video explaining (Visually), how to use this plugin


Please refer to install necessary tools before! Just click on the Images.





This setup is pretty straightforward, development focused.
&
You must have a x32_64 bits architecture to be able to run the server.
Source Code:
Author Source:
If you going to switch to nodejs, recommend you sticking with mine links since. I'm the supporter.
Regards.
Credits: NewK5 pro guy
For any inquiries plugin related errors/api, Please leave a kmessage
or add me on Discord, Thanks.


as soon as i release a new version, server will download it. in /src you must move it to folder root




#2
you can actually get the json plugin somewhere here, or create your own library which shoudn't be that hard
#3
Tutorials / Re: Loading VCMP via command line
Sep 23, 2024, 07:00 PM
does this works with steam-game.dll? did you ever try it out habi?
@habi2 contact me on discord if can username arolisg
#4
Hey nice one habi2, a freindly feedback instead of popping up a new window just do a simple dropdown
#5
Snippet Showroom / [Release] ADiscord Library
Aug 24, 2022, 08:56 PM
ADiscord

A Nodejs Library for connecting a VC MP server over sockets to Discord
Since Discord plugins weren't fully functional at all.  and I got few DM's that they were in the need of a library I decide to create a fully function library where everybody somehow can collaborate :) Enjoy it


Everybody is more than welcome to collaborate. Didn't have the time to do a deep test.
If you encounter any bugs/errors just let me know and I will fix it as soon as possible

Github Wiki
Github Repository

.
 
Quick Code Lookup
             // client
ADiscord.user.send (player.Name + ": " + text, "846106037790179398");

ADiscord.user.messageEmbed ({
Title = player.Name,
Description = "replied: " + text
}, "846106037790179398")
               
           // message listener
       addEventHandler.on ("message", function (message) {
           if (message.channel.id == "846106037790179398" || message.channel.name == "General")
                          message.channel.send ("HI " + message.author.username);
       }
#6
Nice work!
#7
Quote from: Athanatos on Sep 04, 2021, 06:25 PMSo you all guys say that you miss the old 0.3 community eh?

that's right my small grasshopper
#8
new game: Pac - man
[noae][noae][noae]local Kaboom = Kab ({
    id = "pacman"
    loadRoot = "kaboom/"
}) 

local obj = {
    "|": {
        square      = true
        alias       = "blocks"
        solid       = true
    }

    "-": {
        square      = true
        alias       = "blocks"
        solid       = true
    }

    ".": {
        square      = true
        alias       = "points"
        solid       = true
        Size = VectorScreen (10,10)
        Colour = Colour (255,0,0)
    }   
 
    "_": {
        square      = true
        alias       = "door"
        solid       = true
        Size = VectorScreen (0,10)
        Colour = Colour (0,0,255)
    } 

    "@": {
        square      = true
        alias       = "bigpoints"
        solid       = true
        Size = VectorScreen (20,20)
        Colour = Colour (255,0,255)
    }       
}

local map = [
    "|------------------------------------------------------------------------------|"
    "|                                                                              |"
    "| . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . @  |"
    "| @ - . -------- . --------------------------   ---------   ------   --   --   |"
    "| . - . -------- .                                          ||  ||             |"
    "| .   . ||          . . . . . . .  . . . . . .              ||  ||             |"
    "| . . . ||  . . . .  ---------  .  --------- .              ||  ||             |"
    "|---  . ||  .     .  ||     ||  .  ||     || .  ---___---   ||  ||          ---|"
    "   |  . ||  .     .  ||     ||  .  ||     || .  ||     ||   ||  ||          |   "
    "----  . ||  . --- .  ||     ||  .  ||     || .  ||     ||   ||  ||          ----"
    "      . ||  .  || .  ||     ||  .  ||     || .  ||     ||   ||  ||              "
    "      . ||  .  || .  ||     ||  .  ||     || .  ||     ||   ||  ||              "
    "----  . ||  @  || .  ||     ||  .  ||     || .  ---------   ||  ||          ----"
    "   |  . ||-----|| .  ||     ||  .  ||     || .              ||  ||          |   "
    "|---  . --------- .  ---------  .  --------- .              ------          ---|"
    "|                                                                              |"
    "| . . . . . . . . . . . . . . . . . . . . . . .  -------  . . . . . . . . .  . |"
    "| . --   -------------- . | . --------------                ----------   --  . |"
    "| .                     . | .                                                . |"
    "| @ . . . . . . . . . . . | . . . . . . . . . .  |     |  . . . . . . . . .  @ |"
    "|------------------------------------------------------------------------------|"
]
 
Kaboom.scene ("one", function () {
    config ({
        bgcolor = [0,0,0]
        sceneBorder = true
        Size = VectorScreen (1500,500)
    });
 
    addLevel (map, obj);
    local up = array(5, null), down = array(5, null), left = array(5, null), right = array(5, null);
    local getAnimPos = function (x, y) {
        if (x == -5) return 0;
        if (x == 5) return 1;

        if (y == 5) return 2;
        if (y == -5) return 3;
    }
 
    local getItWork = function (entity, Id) {
        local pos = [{X = 5, Y = 0}, {X = -5, Y = 0}, {X = 0, Y = 5}, {X = 0, Y = -5}];
        local random = function (start, finish) return ((rand() % (finish - start)) + start);
       
        if (entity.props ().getBumpHeading () == "up") {
            if (up [Id]) entity.move2d (up [Id].X, up [Id].Y);
            else {
                up [Id] = pos[random (0, 4)];
                if (up [Id].Y == -5) up [Id] = null;
            }

            down  [Id]  = null;
            left  [Id]  = null;
            right [Id]  = null;

                // animations
            if (up [Id]) entity.playAnim ([getAnimPos (up [Id].X, up [Id].Y)]);
        }

        else if (entity.props ().getBumpHeading () == "down") {
            if (down [Id]) entity.move2d (down [Id].X, down [Id].Y);
            else {
                down [Id] = pos[random (0, 4)];
                if (down [Id].Y == 5) down [Id] = null
            }

            up    [Id]  = null;
            left  [Id]  = null;
            right [Id]  = null;

                // animations
            if (down [Id]) entity.playAnim ([getAnimPos (down [Id].X, down [Id].Y)]);
        }       
        else if (entity.props ().getBumpHeading () == "left") {
            if (left [Id]) entity.move2d (left [Id].X, left [Id].Y);
            else {
                left [Id] = pos[random (0, 4)];
                if (left [Id].X == -5) left [Id] = null;
            }

            up    [Id]  = null;
            right [Id]  = null;
            down  [Id]  = null; 

                // animations
            if (left [Id])  entity.playAnim ([getAnimPos (left [Id].X, left [Id].Y)]);
        }
       
        else {
            if (right [Id]) entity.move2d (right [Id].X, right [Id].Y);
            else {
                right [Id]= pos[random (0, 4)];
                if (right [Id].X == 5) right [Id]= null
            }

            up   [Id]  = null;
            left [Id]  = null;
            down [Id]  = null;   

                // animations
            if (right [Id]) entity.playAnim ([getAnimPos (right [Id].X, right [Id].Y)]);   
        }
    }

    local enemy = addEntity ({
        uniqueId    = "enemy1"
        spriteId    = "pacsheet"
        Pos         = getPos (18,30)
        Size = VectorScreen (35,35)

        spritesheet = { 
            Id  = 0, // will reproduce sprite id 5 in sprite sheet
            UV  = VectorScreen (64, 64),
            X   = 0.25,
            Y   = 0.5
        }
        solid   = true
        alias = "enemy"
        Ignore = [ "points", "bigpoints" ]
    })

    local enemy2 = addEntity ({
        uniqueId    = "enemy2"
        spriteId    = "pacsheet"
        Pos         = getPos (10,30)
        Size = VectorScreen (35,35)

        spritesheet = { 
            Id  = 0, // will reproduce sprite id 5 in sprite sheet
            UV  = VectorScreen (64, 64),
            X   = 0.25,
            Y   = 0.5
        }
        solid   = true
        alias = "enemy"
        Ignore = [ "points", "bigpoints" ]
    })   

    local Index = 0;
    enemy.action (function () {
        if (entity.collect ().has ("coloured"))  {
            enemy.Colour = Colour (rand () * 255, rand () * 255, rand () * 255 );
            enemy2.Colour = Colour (rand () * 255, rand () * 255, rand () * 255 );
           
            game.Timeout (function () {
                    // enemy 1
                enemy.collect ().remove ("coloured");
                enemy.Colour = Colour (255,255,255); // returning original colour
 
                    // enemy 2
                enemy2.collect ().remove ("coloured");
                enemy2.Colour = Colour (255,255,255); // returning original colour
            }, 100)
        }
 
        getItWork (entity, 0); 
    })
    enemy2.action (function () { getItWork (entity, 1); })

    local pac = addEntity ({
        uniqueId    = "pac"
        spriteId    = "pacsheet"
        Pos         = getPos (18,51)
        Size        = VectorScreen (35,35)

        spritesheet = { 
            Id  = 5, // will reproduce sprite id 5 in sprite sheet
            UV  = VectorScreen (64, 64),
            X   = 0.25,
            Y   = 0.5
        }
        solid   = true
        player  = true
    })

    pac.action (function () {
        Key ("right", function () {
            if (event == "down") {
                entity.move2d (5, 0);
                entity.playAnim ([6,5,4], {
                    animSpeed = 0.5
                })
            }
        })

        Key ("left", function () {
            if (event == "down") {
                entity.move2d (-5, 0);
                entity.playAnim ([6,5,4], {
                    animSpeed = 0.5
                    mirror = true
                })
            }
        })

        Key ("up", function () {
            if (event == "down") {
                entity.move2d (0, -5);
                entity.playAnim ([6,5,4], {
                    animSpeed = 0.5
                    rotate = "up"
                })
            }
        })

        Key ("down", function () {
            if (event == "down") {
                entity.move2d (0, 5);
                entity.playAnim ([6,5,4], {
                    animSpeed = 0.5
                    rotate = "down"
                })
            }
        })       
    })

    pac.collides ("points", function () {
        hit.entity.destroy2d ();
    })

    pac.collides ("bigpoints", function () {
        hit.entity.destroy2d ();

        // add the 'data' coloured to the collection of the entity for an enemy effect.
        enemy.collect ().set ("coloured", true);
        enemy2.collect ().set ("coloured", true);
    })

    pac.collides ("enemy", function () {
        local obj = hit.entity;
        if (obj.collect ().has ("coloured")) {
            obj.hide ();
        }
        else {
            entity.destroy2d ();
        }
    })

    render (function () {
        pac.render ();
        enemy.render ();
        enemy2.render ();
    })
})

Kaboom.start ("one");
[/noae][/noae][/noae][/noae]


spritesheet: https://i.imgur.com/RdV1iXP.png

remember to download the lastest version of Kaboom.
as all game done by me, aren't finished yet. so, keep tuned for the updates of these games and the Kaboom class.
#9
Hi, Im here once more time!

Kaboom have been rewritten, which now is more stable and more efficienty.
spritesheet have been added, all credits goes to DMWarrior, which I just took his function and rewrite it to Kaboom.
now, It's possible to move among stages see the video - https://i.imgur.com/rbLjznx.mp4

This is such a big update, please check github for more information.

Sample games
mario was the only game rewritten for this new version.

sprites list: https://imgur.com/a/z0y1Eie
#10
based on Kaboom.js



Kaboom.nut its a squirrel library that helps you make fast and easy 2d games.
For documentation and Installation guide check out Kaboom.nut github

Scene
Scenes are the different stages of a game, like different levels, menu screen, and start screen etc. Everything belongs to a scene.

scene("level1", () => {
     config ({
      })
});

scene("level2", () => {
     config ({
      })
});

scene("gameover", () => {
     config ({
      })
});
start("level1"); // starting first level



Mario


game code: https://github.com/AroliSG/Kaboom/blob/main/Examples/mario.nut


Pac-man


game code: https://github.com/AroliSG/Kaboom/blob/main/Examples/pacman.nut


Plat-form


game code: https://github.com/AroliSG/Kaboom/blob/main/Examples/platform.nut


Transform


game code: https://github.com/AroliSG/Kaboom/blob/main/Examples/transform.nut



Warnings

  • collision its not perfect with gravity games. 'Looking forward for future improvements'
  • before using any example make sure, all sprites are located at sprite/kaboom/.
  • this topic will be updated periodically, but stay tuned on github.
  • when using gravity with objects. You shouldn't use pos.Y which will overpass the wall/objects body, you should use 'Jump ()'


Important: Library still under development, if you have found a bug. Feel free to create an issue on github.
Feel free to leave your feedback,

what games can we make with this library?
As far as your imagination can go.
If you would like to assist this project, follow the github and pull request any time.


I have made a file of sprites
#11
remember to check out the github, for viewing out new updates..
#12
Script Showroom / [Release] Mailer Lite
Apr 13, 2021, 02:03 AM
Mailer by AroliS^



- What it is? Mailer is a VC-MP Library that allows you to send emails from your server with ease. Whether you want to communicate with your users or just notify yourself when something has gone wrong, one of the options for doing so is through mail



- How to use it?
1. download the file here
2. need to create an account -> here
3. need to place this on onScriptLoad
-- Loading the file
dofile( "scripts/mailer.addon" );

-- Creating the connection
mailer.Create ("mail.smtp2go.com", "Email Address given by website", "Password given by website")2. need to place this on onPlayerCommand and fill up the needs boxes
if (cmd=="sendemail") {
     mailer.Say ( "Email address given by website", "Sender Nick", "Receiver Email address", "Receiver Nick", "subject", @"
           body html & text
    ");
}



photos
1.


2.



plugin needed is: https://github.com/VCMP-SqMod/VCMP-Hash/releases
any suggestions or ideas are welcomes.
Support: AroliS^#4661

Happy coding <3
#13
You dont need to send all Editboxes, as far as you detecting if they aren.t empty tho.

function GUI::ElementRelease(element, mouseX, mouseY)
{
switch (element)
{
case regiscom.regbut:
GUI.InputReturn(regiscom.users); //yep change that
break;
}
}

function GUI::InputReturn(editbox) // yep here also change
{
switch ( editbox) // yep here also
{
case regiscom.user: case regiscom.pas: case regiscom.repas: /////register//

if (regiscom.user.Text.len() > 0)
{
if (regiscom.pas.Text.len() > 0)
{
if (regiscom.repas.Text.len() > 0)
{
if (regiscom.pas.Text == regiscom.repas.Text)
{
SendDataToServertwo( regiscom.user.Text, regiscom.pas.Text, 70 );
}
else hihihihi(6);
}
else hihihihi(5);
}
else hihihihi(4);
}
else hihihihi(3);
break;
}
}


this shall be enough, and also try organizing your scripts.
#14
http://wiki.adtec.ovh/wiki/Scripting/Squirrel/Functions/ConnectSQL

You should read the doc of sqlite

local str2 = Stream.ReadString ( ); ///this password
local q = QuerySQL(Database, "SELECT * FROM Accounts WHERE Username = '"+string+"'"); //i think here is the problem

GetSQLColumData is the method to get any colum, at your database. Everything you insert is organized by colums. try counting them and giving the number to this function for getting the information you need.

MessagePlayer("Here what is in data: "+GetSQLColumnData (q, 0),player); // the message its appears but what is inserted its appears null


this shall help you.
#15
function GUI::ElementRelease(element, mouseX, mouseY)
{
switch (element)
{
case regiscom.regbut: //register boutton///
1// GUI.InputReturn(regiscom.user); //when player click register boutton he need to fill editbox first//
2// GUI.InputReturn(regiscom.pas); //but as you see here three edit box: user, pasword, repassword//
3// GUI.InputReturn(regiscom.repas); // actually i don't know if i have a problem here or no
}
}

i bet you, you can solve it by your self after this