AMX Mod X




Nightly Builds Sep 13, 2004 02:55
Rather than keep releasing RCs, I have decided to implement something new.

Now you can get nightly packages for AMX Mod X. Starting this night, these packages will be built and uploaded directly from CVS for all platforms. Automatically. Now, you can get the most "up to date" version every day you want.

You can browse the nightly build archive here:

www.amxmodx.org/nightly/

If you note any packaging errors, now is a good time to report them :)
Packages are sorted like this:
/ / >

So find the current build by the current date. The script runs at 5AM Eastern Standard Time. As we make changes I'll note them in various changelog files you can see in the nightly folder. The changelogs will be rotated every time a new internal release is finished.

NOTE: This does not supercede releases, it supercedes beta packages. From now on releases will only be "final" releases, as anyone can now test the betas.

Enjoy!

[also: if you would like a copy of these scripts you may contact me]
.: by BAILOPAN 81 comments


AMX Mod X 0.20-RC5 Released! Sep 12, 2004 03:11
Yup, you heard that right! RC5. AMX Mod X is now very close to a final, stable release of 0.20, so this version is a Release Candidate.

This version fixed many bugs, as well as added some very cool features!

UPDATE TO 0.20 GUIDE
Base Package
Counter-Strike Addon
Day of Defeat Addon
Natural Selection Addon
Team Fortress Classic Addon
The Specialists Addon

The three big features are:
Debugging
There is a new cvar, "amx_debug", which chooses how your plugins are loaded (which means a mapchange is necessary to take effect). If set to "0", plugins will be optimized for great speed, which also means runtime errors will have garbage line numbers. If set to "1" (default), plugins can look like this in plugins.ini to be individually debugged:

myplugin.amxx debug

Lastly, amx_debug 2 will set all plugins to debug mode. Debug mode will give correct line numbers for run time errors at the cost of the plugin's speed being reduced by a factor of 1-4X.

Module Forcing
Plugins can now force the core to have a module loaded, or else the plugin will fail. For example, you can do this:

public plugin_modules()
{
//case insensitive. "dbi" is magic for SQL modules
//using ANY other native in here will cause a crash. be careful!
require_module("engine")
}

Now, if a user does not have Engine loaded, the Core will say "You do not have the Engine module loaded - check modules.ini".

If you type "amxx plugins", these plugin errors will be repeated so you do not have to check the logs.

Modules.ini Transferability
Modules.ini now has some "magic" abilities to it.
It will automatically "correct" module entries to the correct platform.
This means you can even do this:

fun_amxx
engine_amxx
csstats_amxx

And it will work for AMD64, i386, and .dll files.

And now, here is a changelog:


- Fixed a bug related to the JIT headers that was causing stats modules to crash.
- Removed MMGR from default builds.
- Removed MMGR from default SDK options.
- Added optimizations to format() routines.
- Added amx_debug to control plugin run levels.
- Added ability for plugins to tell Core which modules are needed (requested by mahnsawce).
- Added new SDK module functions - MNF_GetPlayerEdict, MNF_GetPlayerFlags.
- Added better support for Natural-Selection 3 Beta 5 (mahnsawce, CheesyPeteza, et al).
- Fixed a bug where %c would not be recognized.
- Fixed a bug where SQL connections were not disconnected on mapchange (UgLyPuNk).
- Fixed a bug where MySQL connections could not have a specified port (Mugwump).
- Fixed a bug where float computations were incorrect on AMD64 (UgLyPuNk).
- Fixed a bug where entity validation routines in Engine/Fakemeta were incorrect (JJKiller).
- Fixed a bug where the fakemeta engine could bootstrap a module twice.
- Fixed a crash bug relating to forward re-registration (fsfod).
- Fixed a compile bugs in some modules that prevented AMD64 compatibility (UgLyPuNk).
- Fixed a memory leak related to Engine not unregistering forwards (mahnsawce).
- Fixed bugs in find_ent* natives which choked on 0 indices (Pimp Daddy).
- Fixed CVector assertions (fsfod).
- Fixed get_keyvalue not being a valid native in Engine (Vortox).
- Fixed include files so formatting Sql or Res variables won't give a tag mismatch (Pimp Daddy).
- Fixed many include files.
- Fixed "amx_client_languages" cvar.
- The command "amxx plugins" will now report plugin load errors that occurred (requested by mahnsawce).
- The command "amxx version" will now report whether your Core build is normal, ASM, or JIT.
- Admin_sql now reverts to users.ini on failure (requested by QwertyAccess).
- SQL configuration CVARs are now enabled by default (Gonzo).
- Changed is_jit_enabled(): now reports 1 for JIT, 0 for safe, -1 for ASM.
- Added module load simulator to default linux packages.
- Module names listed in modules.ini can now be loaded independently of their extension (for example _i386 will search for _amd64 on AMD64, et cetera) (requested by UgLyPuNk).


I'd like to personally thank mahnsawce, UgLyPuNk, Gonzo, PM OnoTo, and the rest of the folks to who help me out with every little thing on IRC. Thanks, guys!

If there are any problems, head over the to RC5 talk thread.
.: by BAILOPAN 27 comments


Benchmarks Sep 06, 2004 13:50
Yup, it's another chart! But don't worry, this one isn't slanderiferous.

As many of you know, both AMX Mod and AMX Mod X have started using the JIT core, which was rumored to be to up "10 times faster" than the normal C implementation of the Small core.

The JIT is written in pure assembly and compiles ".amx" files to pure machine code. The ASM core is written in pure assembly and translates ".amx" to machine calls on the fly. The normal core, written in C, simply interprets ".amx" code into C.

So, how do these three ways of compiling AMX Mod * compare? Why is the JIT so important? Check out the benchmarks!

http://www.tcwonline.org/~dvander/bench.htm

*Note: the Small, Small-ASM, and Small-JIT cores are provided by a third party, ITB CompuPhase.
.: by BAILOPAN 26 comments


Anonymous CVS Sep 06, 2004 01:35
To the expected delight of many CVS goers, I have enabled Anonymous CVS access to Wichita (where AMX Mod X CVS is stored).

This will let you easily access the AMX Mod X source code.

You can use the following commands to download the entire repository:

mkdir amxmodx
cd amxmodx
cvs -d:pserver:[email protected]:/amxmodx login
cvs -z3 -d:pserver:[email protected]:/amxmodx co .


When asked for a password, just hit enter.

Thanks to malex for helping out setting this up.
.: by BAILOPAN 11 comments


AMX Mod X 0.20-TP4 Sep 02, 2004 12:18
AMX Mod X 0.20 Technology Preview 4 is now immediately available for download.

This is mainly a bug fix and finalization release and 0.20 should be nearly ready for production use. Worthy of noting is that since AMX Mod X is nearly feature complete, we'll now start concentrating on hardening the code for optimization and security.

The two most noticeable changes are that "amxx_mm" and "addons/amxx" are now "amxmodx_mm" and "addons/amxmodx". This change is really something for professionality as "amxx" doesn't really mean anything. The other change is, we've heard everyone's feedback about how the 2.6.0 compiler is so bad, and we've reverted to 2.5.1. See the full changelog below.

Please note that because of the name change, you will need to update your addons/metamod/plugins.ini and add in the new core.ini.

Update Guide: http://www.amxmodx.org/updateguide.htm
Downloads: Click Here
Metamod 1.17.2 binaries: Click Here
TP4 Discussion: Click here

Changelog:

Changed amxx_mm.* to amxmodx_mm.*
Changed "amxx" to "amxmodx" for addons folder.
Switched from 2.6.0 compiler to 2.5.1 (2.6.0 is much too buggy).
Enabled the JIT on Linux (sorry - Makefile bug showed we hadn't been doing this).
Rewrote task system to use Forward API.
Added CVAR to multilingual plugin to disable client side options - "amx_client_languages".
Fixed a bug in forward API where parameters would be garbage.
Fixed crash bugs in Forward API.
Fixed many string format crash bugs in amxmodx core.
Fixed other string formatting issues such as %% and % being parsed improperly. (reported by Gonzo)
Fixed a memory leak on loading amxx plugins.
Fixed a bug in the Module SDK header file where structs could be misaligned. (reported by fsfod)
Fixed many crash bugs in the MySQL module. (reported by Gonzo)
Fixed memory leaks in both Engine and MySQL.
Fixed bugs in Engine that caused crashes in DoD and prevented optimization.
Fixed message capturing in Engine so it can work with multiple plugins. (reported by fsfod)
Fixed plmenu and get_user_team bugs in DoD package and TFC package.
Fixed top15 display problems in DoD package.
Fixed bug where amx_say would use the ML system.
Fixed bug where remove_task() could cause a server crash on shutdown. (reported by Pimp_Daddy)
Fixed bug where client_command was not a blockable forward.
Fixed bug where radians were not converted properly. (malex)
Fixed buffer overflow security holes in string formatting routine (legacy code from AMX Mod)
Removed pvPrivateData functions from Engine and placed into Fakemeta_amxx.
Added NewDLL HLAPI functions to FakeMeta. (reported by mahnsawce)
Greatly improved error reporting for both MySQL and Engine.


I'll also note that I've seen some people trying to benchmark AMXx. This is a good idea, and we've been able to locate some functions that are rather slow - such as format() style routines. Look forward to us optimizing the bottlenecks in AMX Mod X over the future.

Don't worry if your bug wasn't listed here, it was probably fixed anyway! If not, please go to the Support forum and post in the new TP4 thread.

Anyone using 0.20-TPx should upgrade as soon as possible as TP3 and previous were not viable for stable operation. There won't be any more huge changes like the compression format or "amxx"->"amxmodx" so rest easy knowing upgrades will be simple from now on.
.: by BAILOPAN 47 comments



1 ... 14 15 16 ... 26

© Copyright 2003-2025 AMX Mod X Dev Team