Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 02/15/18 in Posts

  1. Hello! Asynchronous Javascript Communication is a module to allow easy communication between server, client and CEF/browser. This module lets you call server handlers from clients (and vice versa) without dealing with adding and managing custom event handlers. You can easily call a handler and get your callback called as soon as everything is returned from the handler in a promise like way! Let's see how it works in action: // server side const ajcom = require("./ajcom") ajcom.register("getServerName", hCtx => { return mp.config.name }) // client side const ajcom = require("./[package name]/ajcom.js") mp.events.add("guiReady", () => { ajcom.callServer("getServerName").then((ctx, serverName) => { mp.gui.chat.push(`Welcome to ${serverName} ragemp server!`) }) }) That's all! Not convinced yet? See how the above code is done without ajcom: // server side mp.events.add("getServerName", (player) => { player.call("gotServerName", [mp.config.name]) }) // client side mp.events.add("gotServerName", (serverName) => { mp.gui.chat.push(`Welcome to ${serverName} ragemp server!`) }) mp.events.add("guiReady", () => { mp.events.callRemote("getServerName") }) See? It eases the event handling mess. But there's a lot more to ajcom. You can easily handle errors happening on handler's side or any of the callbacks, set delays and other stuff. The full documentation is available here and you can grab the module from here Github repo Changelog v1.9.6 (2018/3/7) added jsdocs for constructors added separate enums and classes for types used as parameters added noPostback flag added flags for handlers added special handlers (hooks) for server side handlers getting called added the ability to broadcast a call to all or specific clients added cef support added cross side logging fixed calling a handler with triggerDelay not being called fixed data.source and data.target having wrong values change the namespace so that users can use enums and classes v1.1.3 (2018/2/25) added jsdocs changed event handling codes fixed client > client call fixed some possible crashes (fake client calling server) v1.0.0 (2018/2/15): Initial release!
    2 points
  2. I just thought I would drop in and say that the latest server runs well on macOS using the latest version of wine (https://www.winehq.org). It didn't work out of the box, due to incomplete implementations of msvcp140.dll and vcruntime140.dll. Here are the steps I used: install wine 3.0 for macOS. copy the RAGEMP directory from your windows machine to your Mac. copy the msvcp140.dll and vcruntime140.dll from c:\windows\system32 to the server-files directory of RAGEMP. run wine and it will open a terminal with the PATH set up to use the wine binaries (they're not installed globally). start "winecfg", go to the Libraries tab and add dll overrides for msvcp140 and vcruntime140 to load the native before the builtin. finally, run the server "wine ./server.exe" and you should be able to connect to it with the ragemp client.
    1 point
  3. We're still looking for Game Developers and Graphics Designers! For more information, go here:
    1 point
×
×
  • Create New...