January 20, 2021

GameMaker 8 – Rini DLL – Faster than GM ini Functions



Get Element Earth ▶
Support This Channel ▶

Follow me on Facebook ▶
Follow me on Instagram ▶
Follow me on Twitter ▶
Follow me on Google+ ▶

In this tutorial I’ll show you how to use .ini files to store data. Not using Game Maker’s built-in functions, but rather a clever DLL that’s not only up to 10x faster but also has alternate path support so that you can access and store .ini files wherever you want. In this case I’ve put together a mock register and log-in system that one might find in an MMO game.

Very special thanks to Revel for making this great dll.

▼ Useful Links and Resources ▼
GM 8 Project File ▶
You can find Revel’s dll forum page here ▶

▼ More ▼
General Game Maker Playlist ▶
Game Maker Networking ▶

Happy Coding 😀

Nguồn: https://ka-nom.com/

Xem thêm bài viết khác: https://ka-nom.com/game/

in Game
Related Posts

Bratz: Rock Angelz but I am a 25 year old man

July 9, 2020

July 9, 2020 33

Bratz: Rock Angelz is a game for adults, please don’t watch if you are young My Patreon: Merch: Twitter: Instagram:...

GIANT LEGO Battleship Game! BOYS vs. GIRLS

July 9, 2020

July 9, 2020

Giant Lego Battleship Game! We build a Giant Lego Battleship game board and see who will win, Boys vs. Girls....

Vitalii Honta at #ScalaUA – Scala 3 in action

July 8, 2020

July 8, 2020

Vitalii Honta – Scala 3 in action – ScalaUA-2020 Conference Abstract: New and shiny Scala 3 is coming soon. The...

BEING AN ENDER DRAGON FOR THE DAY IN MINECRAFT !! BEING DIFFERENT MONSTERS IN MINECRAFT !! Minecraft

July 9, 2020

July 9, 2020 22

BEING AN ENDER DRAGON FOR THE DAY IN MINECRAFT !! BEING DIFFERENT MONSTERS IN MINECRAFT !! Minecraft Mods ►SUBSCRIBE: ►ROBLOX...

5 Party Games That DRAW on your CREATIVITY – Fun Family Board Games

July 7, 2020

July 7, 2020 7

Board Game Menu Season 1: Episode 10 5 Party Games That Draw On You Creativity Creativity is a skill that...

Bratz: Rock Angelz Walkthrough Part 1 (PS2, Gamecube) 1080p

July 8, 2020

July 8, 2020 32

Bratz: Rock Angelz Walkthrough Part 1 for Gamecube and PS2. Played, recorded and edited by myself for my own channel....

Ender's Game – 05 The Battle Room (OST 2013 HD)

July 8, 2020

July 8, 2020 22

The fabolous Score from “Ender’s Game” Enjoy the Track and the Score;) Enjoy the Album in HD 🙂 You find...

Mating frenzies, sperm hoards, and brood raids: the life of a fire ant queen – Walter R. Tschinkel

July 10, 2020

July 10, 2020 36

Follow a queen fire ant as she builds a colony, protects it from neighboring ant armies and fends off would-be...

The bizarre physics of fire ants

July 9, 2020

July 9, 2020 45

They’re not just an animal, they’re a material. And that’s got engineers interested. // Subscribe to our channel! For more...

Animanimals: Ant

July 11, 2020

July 11, 2020 50

The ants are working together perfectly. But there is one ant who is doing everything differently. Script & Direction: Julia...

Ender's Game Mix

July 9, 2020

July 9, 2020 9

The infamous track listing: Ender’s War: 0:00 – 2:02 Dragon’s Win: 2:02 – 2:48 Final Test: 2:48 – 6:01 Ender’s...

Ender's Game – Mazer Rackham Monologue – Orson Scott Card – Atticus Reads

July 10, 2020

July 10, 2020 6

My favorite monologue from Ender’s Game (the book), which was cut from the movie. Mazer Rackham goes on a long...

GameMaker 8 – ini File Encryption and Decryption

July 8, 2020

July 8, 2020 15

Get Element Earth ▶ Support This Channel ▶ Follow me on Facebook ▶ Follow me on Instagram ▶ Follow me...

Toysbuster.com Vtech V.Smile V-Motion Active Learning System Toys Games.mp4

July 11, 2020

July 11, 2020

Product Description: With Quiz Biz Math Mania, your child will be wired for the ultimate in cool gaming while his...

Predicting ALL 32 TEAMS 2019 NFL Record Game-by-Game

July 9, 2020

July 9, 2020 36

Predicting ALL 32 Team’s 2019 NFL Record Game-by-Game AFC Cleveland Browns – 0:00 Cincinnati Bengals – 2:05 Baltimore Ravens –...

Comments
  • can you make a tutorial to show how to combine this with the .ini files encryter? by the way, cool tutorial, very usefull

  • I don't know if gamaker's ini functions do this but this one keeps crashing when reading large strings but not when writing them. Even when there is a large string anywhere in the ini file it crashes. The only workaround I've come up with is to break the string into several Keys though a bit difficult when writing data structures….

  • I got a question, where can I find my files created based after I registered a new account in game maker?

  • THX a bunch, helped out a lot. Is it ok if I credit you as SlasherXGAMES for this? by the way. One glitch in this function, it will ignore strings with a . in them. It will just take the default value, something I discovered trying to integrate this function with my auto updater. Also, this function is hella fast, I can now finally make a custom save system with ini files!

  • Check out my tutorial on rotating character towards mouse.
    In the object you want facing something:
    Just replace image_angle = point_direction(x, y, mouse_x, mouse_y);
    with
    image_angle = point_direction(x, y, x co-ord of facing object, y co-ord of facing object);

  • b) I read somewhere that unless a dll uses GMAPI (which gives a dll direct access to many resources from Game Maker), calling the dll function has large overhead, so the speed increase isn't guaranteed. If you really want to query its performance and whether it utilises GMAPI then give Revel a shout and ask him about it. You can get to him via his Rini dll page on the YoYo Games Community forum.

  • a) I'm glad you picked up on this. When coding a MMO engine using one of the popular dlls, one should have the client disconnected from the game world as soon as the server stops receiving information from him. If the server-side player obj to the specific client is allocated a variable that contains the username of the client then during the server-client disconnection it could quickly open up the user's profile and edit it as such. I have not implemented this personally but it seems possible.

  • Nice videos, thank you for these!
    2 Questions:
    a)with the login/logout thing, how do you handle events like the game crashing or the the user force quitting so there's not proper logging out?

    b) when do you think the performance advantages of rini actually exceed the overhead of calling the dll? I'm making a game with procedural level elements and want to record their sequence each time it's played (for balancing and debugging purposes). My approach would be to add letters to a string…

  • I could just send you a PM with the specifics.
    Basically you'd have buttons in a main menu for level selection and use a global variable for the score. This score is saved every time the user quits the game via an .ini file as described in this tut.
    Your level select room would open this .ini file and check the score each time this room is visited. If the score read from the file is favourable then the image representing level 2 is unlocked. The PM I'll send you will go into greater detail.

  • please can u do a tutorial about this

    if score >=

    what ever

    then unlocked the next level and change the first level picture to another one

    and save the score

    sorry but i got confused about how to do it

    again i need a tutorial about levels

    if the 1st level score bigger or what ever then unlocked net level if not do something els

    please can u help me am stack ]; subs

  • Don't forget rini_init(); before you use the dll everytime.
    Then to read:
    rini_init();//first initialise the dll
    file = rini_open(working_directory + 'ProfilesPlayer ' + global.name + '.ini');//so put the destination of the .ini file here.
    AVariableIWantReadInto = rini_read_string(file, 'PROFILE', 'Status', 'offline');//file being the location stipulated above, then SECTION from where to read, then KEY from where to read, and lastly default value if non-existent.
    rini_close();//close ini file.

  • It's really simple.
    file = rini_open(working_directory + 'ProfilesPlayer ' + name + '.ini');//here is where you tell the dll where the file is. In this case, the ini file with the player's profile is located in a subdirectory called "Profiles".
    rini_write_string(file, 'PROFILE', 'Username', name);//the location we've set to the variable "file", then there's SECTION, then there's KEY, then there's the value you want written.
    //Then you close it.
    rini_close();//close ini file.

  • As long as you provide the location for the .ini file. Remember this dll does have the ability to use .ini files in locations other than the working directory.

    file = rini_open(working_directory + 'A Folder NameAnother Folder Namefile.ini');//this is where you'd stipulate the directory where the ini file can be found.

  • seriously i've been watching this over and over again, can you please make a more simple version, all i want to do is have the ini file in a different folder than the game file and then to be able to change a variable by reading it

Leave a Reply

Your email address will not be published. Required fields are marked *