Currently the developers are putting their own money into JC2-MP to keep the servers online.

Please take a few seconds of your time and disable your AdBlock plugin for our website.

Ad revenue is not going to developers, it is used purely for covering our hosting costs.


You are also free to donate, which removes all ads from our website!

Patch 0.3 was just released! Full changelog here:

3 years ago

June 02, 2020, 01:44:10 pm

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.

Messages - SinisterRectus

Pages: [1] 2 3 ... 31
JC2-MP / Re: Minecraft in Just Cause 2 Multiplayer
« on: April 22, 2020, 02:58:18 pm »
Very cool :)

Server hosting / Re: problem with hosting on freebsd!
« on: October 01, 2018, 10:36:06 pm »
FreeBSD is not officially supported. That guide was community written and may be outdated.

Suggestions / Re: Partially allow "dropzone"
« on: March 20, 2018, 03:09:36 am »
Almost everything that you can do with dropzone mods can be recreated or closely emulated with the scripting API, with the benefit of knowing exactly what assets your clients are using.

Releases / Re: [Release] Advanced BuyMenu (Updated Release of BuyMenu)
« on: March 04, 2018, 11:04:12 pm »
What wait time?

Work in progress / Re: JC2MP Discord Bridge
« on: September 27, 2017, 04:21:44 pm »
Updated to use the new and improved Discordia 2.0!


You will need to update your Discordia installation to use this! I strongly recommend installing to a new directory to avoid any dependency conflicts. Or, if you don't use Luvit for anything else, you can completely remove your deps folder and re-install Discordia. (Lit does not have an auto-update feature, unfortunately).

You may also want to update Luvit by running lit update.


The only file that has been changed in the JC2MP module is discordtojcmp.lua:

- Removed guildId parameter (only channelId is required now)
- Replaced assertion with an error log when channel is not found
- Changed initialization to only occur once at startup instead of on every connection
- Discordia 2.0 compatibility fixes

Also notice that the bot token must be prefixed with "Bot " to work. I've done this automatically on the last line of the program. If you have a different method of loading your token (eg, from a file), make sure that it is properly prefixed.

Releases / luacheck globals table
« on: May 31, 2017, 10:24:05 pm »
If you use luacheck to lint your JC2MP files, then this might be useful for you. It is a list of definitions for JC2MP classes, enumerations, and functions. Simply drop it into any directory that contain your Lua files, or any directory above that one, recursively.

.luacheckrc file here

Code used to generate the list:

~ client ~
Code: [Select]
Events:Subscribe('ModuleLoad', function()
local globals = {}
for k in pairs(_G) do
if k:find('^%u') then
globals[k] = true
Network:Send('luacheck', globals)

~ server ~
Code: [Select]
Network:Subscribe('luacheck', function(globals)
for k in pairs(_G) do
if k:find('^%u') then
globals[k] = true
local sorted = {}
for k in pairs(globals) do
table.insert(sorted, k)
local f ='.luacheckrc', 'w')
f:write('globals = { -- luacheck: ignore\n')
for _, k in ipairs(sorted) do
f:write('\t"', k, '",\n')

Work in progress / Re: [WIP] Panau Online
« on: April 28, 2017, 10:24:58 pm »
The scale of this project is mind blowing. Clearly, a huge amount of work has been put into it. As always, great work from Jaxm and the rest.

A cooperative JC2MP is something that I've always wanted to experience, and I'm sure others would want to as well. Hopefully, we can get some old players back in here to try this out in the future. :D

Without changing the timer code, you can make this work by wrapping the class method call with another function:

Code: [Select]
Timer.SetTimeout(1000, function()

Can you give an example of what you are trying to do?

Scripting support / Re: Issue with Spawning Object with No Model
« on: January 16, 2017, 07:29:11 am »
I ran your script as given. Nice work. How do you know the invisible object doesn't spawn?

Scripting / Re: [HELP] Script to get players off of vehicles
« on: January 12, 2017, 06:45:54 pm »
Don't think about it as "the player that is on my vehicle". You can't control their input. You can only control your input. Think about it as "if a player jumps on a vehicle, how should their client behave." It's somewhat of an abstract concept, and I can't really explain to you how to think. You just have to realize what LocalPlayer is in relation to the player objects in game.

Scripting / Re: [HELP] Script to get players off of vehicles
« on: January 12, 2017, 05:53:32 pm »
You should be writing a client script for this. In that case, you'd want to target LocalPlayer, which is a global object that represents the client's player.

For example:

Code: [Select]
local state = LocalPlayer:GetState()

Scripting / Re: Script to get players off of vehicles
« on: January 12, 2017, 04:59:00 pm »
You're going to want to start with some tutorials so that you understand some of the basics of scripting.

After that, you'll need to check player states. There is a player state that lets you know whether a player is in a stunt position. If they are, you can force them to jump by overriding their input.

That's how you start. Feel free to ask specific questions along the way.

Scripting support / Re: Visually see the TriggerType.Box or Sphere
« on: December 31, 2016, 05:51:58 pm »
I can't provide code right now because I'm posting from my phone. You use the position as the center point and use the angle * size * 0.5 to get offset points for a box, or just size.x for a circle radius.

Scripting support / Re: Visually see the TriggerType.Box or Sphere
« on: December 31, 2016, 05:34:31 am »
Just draw a box or circle at the trigger position?

Pages: [1] 2 3 ... 31