1. JimLess

    JimLess Scavenger

    According to the latest changes in the SE, it is required to update the oxide for it. In particular, the hooks(attached), and there is a difference in System.Data.SQLite.dll (InfinarioSDK.dll except with wrong version). My solution exclude from archive System.Data.SQLite.dll.
    p.s. some new hooks comming soon...
     
    Last edited: Apr 2, 2017
  2. Wulf

    Wulf Community Admin Community Admin Oxide Developer

    We aren't really actively updating for Space Engineers until there is more put into making the support for it usable.
     
  3. JimLess

    JimLess Scavenger

    I make some works for integration to SE. I make pull request, u can decline/close it and then make changes by your hands. This working copy. No enough functionality, only working chat commands(for my shop script).
    For silent commands(hidden from all others players), need install workshop mod id 908585300 on server.
    source code for client side:
    Code (Text):
    using Sandbox.ModAPI;
    using System;
    using VRage.Game;
    using VRage.Game.Components;

    namespace Oxide
    {
        [MySessionComponentDescriptor(MyUpdateOrder.BeforeSimulation)]
        public class ClientSide : MySessionComponentBase
        {
            public static bool Inited { get; private set; }
            public static bool IsServer { get; private set; }

            private int Frame;

            void Init()
            {
                IsServer = MyAPIGateway.Multiplayer.IsServer || MyAPIGateway.Session.OnlineMode == MyOnlineModeEnum.OFFLINE;
                MyAPIGateway.Utilities.MessageEntered += ChatMessageEntered;
                Inited = true;
            }

            protected override void UnloadData()
            {
                if (Inited)
                    MyAPIGateway.Utilities.MessageEntered -= ChatMessageEntered;
            }

            public override void UpdateBeforeSimulation()
            {
                if (MyAPIGateway.Session == null || MyAPIGateway.Utilities == null || MyAPIGateway.Multiplayer == null) // exit if api is not ready
                    return;

                if (!Inited)
                    Init();
            }

            public static void ChatMessageEntered(string messageText, ref bool sendToOthers)
            {
                if (!messageText.StartsWith("/", StringComparison.OrdinalIgnoreCase))
                    return;
                MyAPIGateway.Multiplayer.SendMessageToServer(0xff20, System.Text.Encoding.Unicode.GetBytes(MyAPIGateway.Session.Player.SteamUserId + "," + messageText));
                sendToOthers = false;
            }
        }
    }
     
     
  4. Wulf

    Wulf Community Admin Community Admin Oxide Developer

    I'm not sure what that code portion has to do with Oxide, could you provide any details? The pull requests you submitted need to be cleaned up and only have the changed portions submitted instead of a merge commit of all commits that you personal repo didn't originally have.
     
  5. JimLess

    JimLess Scavenger

    This part of the code is necessary so that other players do not receive chat commands. It blocks sending them to all game clients and sends them only to the server. Everything works fine without it. But, everyone will see what you write in the chat. I already added this to the mod as a script(all workshop mods used by clients and server). You can download the mod and see how it works. Upload and publish it from your account and then u can recommend using it on your pages.
     
  6. Wulf

    Wulf Community Admin Community Admin Oxide Developer

    I'm not sure that is necessary, but I'll take a look.