AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Off-Topic (https://forums.alliedmods.net/forumdisplay.php?f=15)
-   -   [Q] How about a new platform? (https://forums.alliedmods.net/showthread.php?t=326619)

Sam839 08-08-2020 14:34

[Q] How about a new platform?
 
How about a new platform for plugins?

I am creating a new platform similar to SM and it is important for me to know your opinion on this matter.
The scripting engine is AngelScript.
Plugins can be compiled or loaded directly.

Sam839 09-19-2020 01:12

Re: [Q] How about a new platform?
 
Name: AngelicMod
Estimated release date: 09.12.2020 [dd.mm.yyyy]

DeteCT0R 09-19-2020 09:38

Re: [Q] How about a new platform?
 
Ill stick to sm or amxx. Svencoop uses Anglescript but i dont like too much.

Sam839 09-19-2020 10:53

Re: [Q] How about a new platform?
 
This language is used for scripting, but I decided to use it for creating plugins. The syntax is similar to C/C++ and there is no need to compile.

haZh 09-21-2020 23:08

Re: [Q] How about a new platform?
 
Anything that's even slightly better than this in every way. Good luck.

Sam839 09-22-2020 12:17

Re: [Q] How about a new platform?
 
So far I have done the following steps:
  1. First Script Engine (Main script engine. It can be loaded from any application)
  2. Second Script Engine (Modification for First Script Engine)
  3. Loader (Main core)
  4. Custom packer for security (I respect other people's work and naturally mine, and this work should be well protected from prying eyes.) [At the moment it is not fully completed but works well. (Only for 32bit)]

What I added:
  • #define <val> <val>
  • *Some types*
  • MetaData. For example: [<MetaDataHere>] int r = 0;

What I'm working on now:
  • Type `Pointer`
  • Type `ConVar`
  • Encryption functions (Like XorString, AESSign and etc.)
  • Loader (I am planning to do support for creating modules and extensions)
  • EventSystem (void OnPlayerDeath and etc)
  • Threads and segments (The coolest thing I'm doing right now. Imagine that you can split the plugin into several segments and in case of an error, one segment will be automatically stopped or restarted while the main one is executed as intended :P)

At the moment, the platform can only work only on Windows and only for TF2. (I don't think I can release a version for Linux, but as for other games - everything has its time.)
I plan to add a lot of things before I release this platform. I hope she will be good.

Sam839 09-22-2020 12:32

Re: [Q] How about a new platform?
 
Just little simple example:

PHP Code:

#include "tf2.h"

#define _MSG Msg

class WoW
{
    
void printf(string txt)
    {
        
#ifdef _MSG
        
_MSG(txt "\n");
        
#endif
    
}
}

void OnClientFullyConnect(int index) {
    
#ifdef CLIENT
    
BasePlayerpl cast<BasePlayer@>(CTFPlayer(index));
    
#endif        // I am working on #else...
    #ifdef SERVER //
    
BasePlayerpl cast<BasePlayer@>(TFPlayer(index));
    
#endif
    
pl->Kick("Im sorry...");
}

bool PluginLoad() {
    
WoW().printf("Oof!");
    return 
true;
}

bool PluginUnload() {
    
WoW().printf("Oof?");
    return 
true;



Sam839 11-05-2020 04:52

Re: [Q] How about a new platform?
 
The project is frozen!
Reason: There is a better alternative - Source.Python. (Yes-yes... Python...)

redivcram 11-11-2020 20:53

Re: [Q] How about a new platform?
 
I think I've read somewhere that you can "compile" Lua scripts (Obfuscation). Though, AMXX Plugins and Metamod Plugins need better categories on this forum for publishing/approving them. Never was interested in SM so far, probably won't. :P


All times are GMT -4. The time now is 04:04.

Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.