servermod / smod2 Goto Github PK
View Code? Open in Web Editor NEWSCP:SL ServerMod2
Home Page: https://discord.gg/8nvmMTr
License: MIT License
SCP:SL ServerMod2
Home Page: https://discord.gg/8nvmMTr
License: MIT License
This seems to be happening on other servers running 2.0.11, but when I did a wget on Assembly-CSharp.dll and Smod2.dll and booted up my servers. it did the screen corruption where if you press N it shows up and get stuck behind the player count, and the message to use Q in the top right becomes a bunch of vertical lines.
I uploaded my first working plugin to Linux and I'm not seeing the
Example Plugin has loaded :)
Config value: true
That I saw when I was testing MultiAdmin on Windows. Do the DLLs not load on Mono in Linux?
when I try to launch SCP SL itself will Smod2 it shows that it isnt loading anything with task manager, in order to fix it i have to validate my files and reinstall Smod2 only for it to happen again. plz fix
I just updated to v6.2.0 on Linux and downloaded the Assembly-CSharp.dll and Smod2.dll from GitHub. As soon as I started the server with Smod3 files, I received this error:
[13:28:40] MultiAdmin for SCP: Secret Laboratory made by Courtney (Grover_c13), who is not a girl.
[13:28:40] Heavily modified but based off LocalAdmin by Hubert Moszka.
[13:28:40] You can request LocalAdmin source code at [email protected].
[13:28:40] You can find MultiAdmin source code at https://github.com/Grover-c13/MultiAdmin/.
[13:28:40] Released under CC-BY-SA 4.0
[13:28:40] Do you have too much money? appreciate multiadmin/servermod? consider sending me some!
[13:28:40] Paypal: [email protected]
[13:28:40] Failed to open log for github error submission, the SCPSL exe for that session is still shutting down.
[13:28:58] Warning: program is running low on memory (294 MB left)
[13:28:58] Warning: program is running low on memory (292 MB left)
[13:28:59] Warning: program is running low on memory (-2942 MB left)
[13:29:00] Warning: program is running low on memory (-6202 MB left)
[13:29:01] Warning: program is running low on memory (-7318 MB left)
[13:29:02] Warning: program is running low on memory (-7818 MB left)
[13:29:03] Warning: program is running low on memory (-8320 MB left)
[13:29:04] Warning: program is running low on memory (-8814 MB left)
[13:29:05] Warning: program is running low on memory (-9312 MB left)
[13:29:06] Warning: program is running low on memory (-9804 MB left)
[13:29:07] Warning: program is running low on memory (-10304 MB left)
[13:29:07] Restarting due to lower memory error evaluating name
[13:29:07] Restarting the server at end of the round due to low memory
[13:29:08] Game engine exited/crashed/closed/restarting: No such file or directory
[13:29:08] Cleaning Session
I'm just running vanilla for now to push to update out to my users.
I own a server, and sometimes i want to play. I want a way to allow for reserved player slots that can be in addition to setting the max players, allowing for staff to join if the server is full or not.
no free events for message in the queue
(Filename: Line: 473)
no free events for message in the pool
(Filename: Line: 479)
What happened to these commands?
I have reports of an SCP staff member using remote admin on my server to abuse. I don't want to ban this staff member if I don't have to. This is the last version of ServerMod2 that I see with these commands.
Before your mate exits dimension you can see if he's dead or not locking your mouse at him. While he's coming out you can see his role changing to Spectator. If you didn't see it - he's left pocket dimension alive.
This is a suggestion for the NukeEvent, it would be really handy if we could get the player that activates and desactivates the nuke.
I doubled the SCP's health to test this, and then spawned myself in as each of the SCPs as someone read my health to me each time. For every single SCP, I had the default health.
SCP049_HP: 2400
SCP049-2_HP: 800
SCP096_HP: 4000
SCP106_HP: 1400
SCP173_HP: 4000
Title
Now I can use noclip cheat without any issues.
React with thumbs up for yea, react with thumbs down for nah.
Simplified like GetString("key," default="default if not set"). No registration and stuff like that.
does installing servermod2 mess up something with the verification key? because now when i try to make my server public it says my passcode is not correct. any fix or do i just need to email them to get a new passcode?
Server won't start if there's no folder Logs inside servers/%serverid% folder.
You need to manually create it.
I think it's better to create folder if not exist already.
smart_class_picker choose some players to play as SCP twice and more times in a row
When players are teleported in HC_SERVERS, they're sometimes stuck in floor
https://media.discordapp.net/attachments/455437307110227990/481207217807425537/unknown.png?width=1202&height=677
With the removal of positron grenades, the GRENADE command no longer seems to work.
I'm having problems with my remote admin and being able to see player specific info. I can no longer see the players' colors on the left side, and when I go to player specific info and request their info, it says I have insufficient permissions, no matter what server role I am. Any idea if there's a config option I can enable or something I'm missing? I have enable_ra_server_commands set to true, and i have my steam id 64 in a list for server_command_whitelist, and I've even tried enabling bypass_server_command_whitelist, but to no avail.
Add config lines for server admins to be able to modify access level to locked doors. I'd like to give them grant to all doors except Entrance Gate.
Add config lines for making Alpha Warhead lock after X seconds it was started.
Add config lines to edit item's spawn rarity.
Add config lines to modify weapons damage and SCP "armor" (bullet damage resistance)
Remark: can be done by plugin
Add Kill log so admins can find who is teamkilling.
Remove items in X seconds with ignore list. So admins can choose which items shoudn't be deleted.
Add config line to disable automatic doors open when Alpha Warhead detonation was started.
Add plugin_path to config and have multiple folders
API to teleport or set(get) player's position
API to set(get) player's health, speed and godmode(if possible)
Add the attacker(if there is one) for IEventPlayerHurt and IEventPlayerDie
Able to block the event (like blocking IEventPlayerHurt to turn godmode on)
Add a command that shows the list of working plugins
SMod 2.0.3 reverted nickname changes
Now server's name is server's specs and some player's nickname is just like "Intel Core I5 etc"
Does not create configs. Installed correctly.
Add OnHancuff and OnLeaveHandcuff (triggered when dstance is longer than 300 or when people leave handcuffs using disarmer/E)
I'm creating my first plugin for Smod2 and I'm having quite a difficult time getting it to work. Here is a list of all the things I'd like to see in the API in the future that would make it easier to use.
Player
class, a readonly public variable Health
that allows reading the player's health. A method SetHealth
would probably be needed for setting health positively, unless negative values can be supplied to Damage
OnAssignTeam
is passed a Teams previousTeam
parameter that allows checking the previous team of the playerOnSetClass
is passed a TeamClass previousTeamClass
parameter that allows checking of the previous class of the playerIEvent
, OnPlayerSpawn
, that is fired after the OnAssignTeam
and OnSetClass
events fire only when the player is physically in the server. Example use case: a player does friendly fire damage to other players and on respawn, the player is damaged equal to the damage doneIEvent
, OnPlayerSpectate
, that is fired after the OnPlayerDie
event that functions the same as OnAssignTeam
.IEvent
, OnPlayerEscape
that triggers when Scientists or D-class escape the map. Use case: force scientists and d-class to drop their items when they escape.OnSetClass
, it calls another OnSetClass
until teamclass == teamclassOutput
)Vector
as an out
parameter in events that respawn players, so that players can be respawned in certain saved locationsspawnRagdoll = false
, it should disable the hidden Vector
that controls where a player will be respawned when the player is turned into SCP-049-2. If there's no ragdoll, there should be no respawn point other than SCP-049's spawn point.TeamClass
factory so that TeamClass
classes for a Classes
value can be retrieved. I tried to do new TeamClass()
, or modify an existing TeamClass
with teamclassOutput.Team = Teams.SCP; teamclassOutput.ClassType = Classes.SCP_049_2;
, but the TeamClass
enums are readonly. I used Server.getClasses()
and set it to a Dictionary
in my plugin to finally get access to all the classes in the game.Vector
to control where they respawn as zombies, or set the Vector
to null and have them respawn in SCP-049's baseLet me explain what I am personally trying to do so that my requests will make more sense. I have an epidemic of zombies killing themselves intentionally either by tesla gate or by falling to their deaths in the Heavy Containment Y-junction.
If you're better off reading the code, here is my ZombieSuicideHotlineEventHandler.cs file.
These are all the things I've tried in the past 24-hours to get this working:
player.ChangeClass
in OnPlayerDie
, and then teleport using player.Teleport
to SCP-049's spawnpoint. player.ChangeClass
and player.Teleport
do not work in OnPlayerDie
.Dictionary
in the plugin in OnPlayerDie
. Then, in OnSetClass
if a player is flagged in zombieSuicides
, set teamclassOutput
to Classes.SCP_049_2
. The event OnSetClass
does not trigger when a player is killed and set to Spectator. If the player is spawned in in the next NTF/Chaos wave, the player will respawn as SCP-049-2 and die instantly to the tesla gate or infinite pit of death.Dictionary
in OnPlayerDie
. In OnSetClass
, set the zombies to SCP-049 to respawn them in a safe space. Then, chain another OnSetClass
by moving the player from zombieSuicides
to deadDoctors
and then set the player to SCP-049-2 in the second OnSetClass
. Cannot chain events.There are more that I thought of during development and I'll add them when I remember them.
I'm also putting all my ideas for plugins here that can't currently be implemented in the API as example use cases for implementing the suggestions above:
After update smod ignores port queue. It was fixed with previous version.
Log spam error:
host id {0} out of bound or host has been already removed
(Filename: Line: 514)host id {0} invoked wrong io operation and will be deleted
(Filename: Line: 548)
This leads to server's file system overload and crash.
Log is over 300mb in 3 minutes after start.
Version 2.0.6 doesn't have this issue. I am using only 1 plugin: risky ip check
ArgumentException: Insufficient Space
Parameter name: bytes
at System.Text.UTF8Encoding.InternalGetBytes (System.Char* chars, Int32 count, System.Byte* bytes, Int32 bcount, System.Char& leftOver, Boolean flush) [0x00000] in :0
at System.Text.UTF8Encoding.GetBytes (System.String s, Int32 charIndex, Int32 charCount, System.Byte[] bytes, Int32 byteIndex) [0x00000] in :0
at Dissonance.Networking.PacketWriter.Write (System.String s) [0x00000] in :0
at Dissonance.Networking.PacketWriter.Write (System.String playerName, UInt16 playerId, CodecSettings codecSettings) [0x00000] in :0
at Dissonance.Networking.PacketWriter.WriteHandshakeResponse[HlapiConn] (UInt32 session, UInt16 clientId, System.Collections.Generic.List1 clients, System.Collections.Generic.Dictionary
2 peersByRoom) [0x00000] in :0
at Dissonance.Networking.Server.BroadcastingClientCollection1[Dissonance.Integrations.UNet_HLAPI.HlapiConn].ProcessHandshakeRequest (HlapiConn source, Dissonance.Networking.PacketReader& reader) [0x00000] in <filename unknown>:0 at Dissonance.Networking.BaseServer
3[Dissonance.Integrations.UNet_HLAPI.HlapiServer,Dissonance.Integrations.UNet_HLAPI.HlapiClient,Dissonance.Integrations.UNet_HLAPI.HlapiConn].NetworkReceivedPacket (HlapiConn source, ArraySegment`1 data) [0x00000] in :0
at Dissonance.Integrations.UNet_HLAPI.HlapiServer.OnMessageReceivedHandler (UnityEngine.Networking.NetworkMessage netmsg) [0x00000] in :0
at UnityEngine.Networking.NetworkConnection.HandleReader (UnityEngine.Networking.NetworkReader reader, Int32 receivedSize, Int32 channelId) [0x00000] in :0
at UnityEngine.Networking.NetworkConnection.HandleBytes (System.Byte[] buffer, Int32 receivedSize, Int32 channelId) [0x00000] in :0
at UnityEngine.Networking.NetworkConnection.TransportReceive (System.Byte[] bytes, Int32 numBytes, Int32 channelId) [0x00000] in :0
at UnityEngine.Networking.NetworkServer.OnData (UnityEngine.Networking.NetworkConnection conn, Int32 receivedSize, Int32 channelId) [0x00000] in :0
at UnityEngine.Networking.NetworkServer+ServerSimpleWrapper.OnData (UnityEngine.Networking.NetworkConnection conn, Int32 receivedSize, Int32 channelId) [0x00000] in :0
at UnityEngine.Networking.NetworkServerSimple.HandleData (Int32 connectionId, Int32 channelId, Int32 receivedSize, Byte error) [0x00000] in :0
at UnityEngine.Networking.NetworkServerSimple.Update () [0x00000] in :0
at UnityEngine.Networking.NetworkServer.InternalUpdate () [0x00000] in :0
at UnityEngine.Networking.NetworkServer.Update () [0x00000] in :0
at UnityEngine.Networking.NetworkIdentity.UNetStaticUpdate () [0x00000] in :0(Filename: Line: -1)
BitDefender now detects Assembly-CSharp.dll as an Ursu trojan for ServerMod 3.1.11:
https://github.com/Grover-c13/Smod2/releases/tag/3.1.11
Can we be given the source code of Assembly-CSharp.dll to know that it's not a virus? Or do you know why it's being detected as a virus?
I have a problem when i install smod i cant shot any weapon in any class.
Anyone can shot but me can't.
Looking for fix.
Sorry for bad English ;P
I've uploaded full log, doesn't know where to look for an error.
Probably gamebug.
2018-05-24_16_52_SCP_output_log.txt
So I reset pd_random_exit: true
after seeing that I could exclude room IDs in the newest update because too many of my players complained about teleporting into SCP-079's or the MicroHiD's room and getting stuck.
Anyway, I re-enabled the configuration setting today and the pocket dimension is doing one of two things:
This was with no setting for pd_random_exit_ignore_rids
. I then decided to set this config, only allowing the rooms LC-HC_A,LC-HC_B,HC_096_CR,HC_106_CR,HC_SERVERS:
pd_random_exit_ignore_rids: CROSSING,HC_079_CR,HC_079_HALL,HC_079_MON,HC_457_CR,LC_914_CR,LC_ARMORY,LC_CAFE,nukesite,Offices_PCs,Offices_PCs,Offices_upstair,Shelter,Smallrooms2,Straight_4
Setting this didn't seem to change anything. The two ill effects mentioned above are still happening.
Hello, sometime when i open putty the console crash and the server stay on.
646ec9044386ec4a7b3dd>:0
at MultiAdmin.MultiAdmin.Server.Write (System.String message, System.ConsoleColor color, System.Int32 height) [0x00031] in :0
at MultiAdmin.OutputThread.Read (MultiAdmin.MultiAdmin.Server server) [0x007da] in :0
at MultiAdmin.MultiAdmin.Server.<.ctor>b__55_1 () [0x00000] in :0
at System.Threading.ThreadHelper.ThreadStart_Context (System.Object state) [0x00014] in <65984520577646ec9044386ec4a7b3dd>:0
at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00071] in <65984520577646ec9044386ec4a7b3dd>:0
at System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in <65984520577646ec9044386ec4a7b3dd>:0
at System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state) [0x0002b] in <65984520577646ec9044386ec4a7b3dd>:0
at System.Threading.ThreadHelper.ThreadStart () [0x00008] in <65984520577646ec9044386ec4a7b3dd>:0
Trying to get the ev.round.Duration
in OnRoundEnd(RoundEndEvent ev)
causes an error
(Was trying to print how long the round lasted)
[03:13:55] [ERROR] [Event] Event Handler: AdminToolbox.RoundHandler Failed to h
andle event:Smod2.Events.RoundEndEvent
[03:13:56] [ERROR] [Event] Object reference not set to an instance of an object
[03:13:56] [ERROR] [Event] at AdminToolbox.RoundHandler.OnRoundEnd (Smod2.Eve
nts.RoundEndEvent ev) [0x00000] in <filename unknown>:0
at Smod2.Events.RoundEndEvent.ExecuteHandler (IEventHandler handler) [0x00000]
in <filename unknown>:0
at Smod2.Events.EventManager.HandleEvent[IEventHandlerRoundEnd] (Smod2.Events.
Event ev) [0x00000] in <filename unknown>:0
Was just using something like int myRoundDuration = ev.Round.Duration
Hello,
I would like to make plugins for this mod but any documentation about the API would be nice.
I can't know the functions it uses without it.
Players disable nuke even after 10 seconds it was started.
string[] feedback = plugin.pluginManager.CommandManager.CallCommand(plugin.pluginManager.Server, "roundrestart", new string[0]);
string response = "";
foreach (string line in feedback)
{
response += line + "\n";
}
The above code returns the response Command roundrestart does not exist!
. Laserman also tested player.RunCommand() and it did not work.
I'm very happy that ServerMod 3.1.12 specified that it is updated for 7.3.1, but I feel like if we want to stop having to repeat this:
Q: Why is ServerMod no longer working?
A: If the main game updated, ServerMod needs to update. Unless in the release notes of a release it says it's been updated for the game version, it won't work.
We should tell people what exact version of the game each ServerMod release was created for, maybe with a link to the SCP: SL announcement for the game version so that people can click that and know if Smod2 is outdated or not.
replace_item_loot = 13:14, 3:0, 2:14, 4:16, 21:20, 23:16;
add_item_loot = 14;
remove_item_loot = 1;
Doesn't replace any of items.
title
Setting role calls set role event. We either need to make it not do this or stop it from calling the same event with the same parameters in a short time (this will still cause issues if someone sets it to one role one call and then another role another call).
Aka a dll I have placed inside /sm_plugin/dependencies
Hello, since the new update when the server restarts completely (Out of ram ...), my server time out and restarts
Heya,
I would like if you guys convert the dedicated slots to steamid64 instead of IP's so it supports dynamic IP's.
Many thanks in advance,
Ron
Can only be set also add
Noclip + Godmode commands
Also if someone is the admin class anyone can win. they dont count towards that
I want to change one of my servers to separate the shared win condition between Chaos and SCP, and make it so that if the Warhead goes off, Chaos automatically win. This way, each of the 3 teams has a shared objective:
I'm sure there would be some people who would want separate config variables for each of these, in case they don't want warheads to instantly win the game, or for a single SCP to drag out the game against a whole server of MTF.
Instead of restarting server it crashes game's process with "access denied" error.
Access Denied to start a process, while running as Admin.
Hello,
Is it possible to make a plugin for custom in-game tags for example: Donators?
class NukeCountDown: IEventHandlerWarheadStartCountdown
{
public void OnStartCountdown(WarheadStartEvent ev)
{
plugin.Info("Called");
}
}
This was also confirmed by Evan (Evan#7181) when I first brought this up (14-06-2018).
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.