From a85737a5dfe651e4ab367a93fd1df6d444a5090a Mon Sep 17 00:00:00 2001 From: AngryKirC Date: Mon, 13 Apr 2020 20:56:59 +0400 Subject: [PATCH 1/7] added getPtrUInt, setPtrUInt, unitCheckExists functions; disabled SDL by default --- .gitignore | 699 +----------------- Libs/SDL/SDL2-2.0.8/VisualC/SDL/SDL.vcxproj | 4 +- .../VisualC/SDL_ttf_VS2012.vcxproj | 4 +- Libs/SDL/VQA/VQA_XCC.vcxproj | 4 +- .../builds/windows/vc2010/freetype.vcxproj | 4 +- .../objs/vc2010/Win32/Debug/freetype.log | 8 + .../lpng151/projects/visualc71/libpng.vcxproj | 4 +- Libs/lpng151/projects/visualc71/zlib.vcxproj | 4 +- Libs/luasocket/socket.vcxproj | 4 +- SDL.cpp | 7 +- UniMod2.vcxproj | 5 +- UniModNew.v11.suo | Bin 0 -> 18944 bytes unit.cpp | 59 ++ unit.h | 5 +- unit2.cpp | 2 +- util.cpp | 54 +- 16 files changed, 157 insertions(+), 710 deletions(-) create mode 100644 Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/freetype.log create mode 100644 UniModNew.v11.suo diff --git a/.gitignore b/.gitignore index e5b6b77..6a425da 100644 --- a/.gitignore +++ b/.gitignore @@ -1,72 +1,5 @@ -/Debug/SDL.obj -/Debug/SHA1.obj -/Debug/SendBuffer.obj -/Debug/UniMod.Build.CppClean.log -/Debug/UniMod.exp -/Debug/UniMod.lib -/Debug/UniMod.obj -/Debug/UniMod.pch -/Debug/UniMod.pdb -/Debug/UniMod.tlog/CL.read.1.tlog -/Debug/UniMod.tlog/CL.write.1.tlog -/Debug/UniMod.tlog/UniMod.lastbuildstate -/Debug/UniMod.tlog/UniMod.write.1u.tlog -/Debug/UniMod.tlog/cl.command.1.tlog -/Debug/UniMod.tlog/link.command.1.tlog -/Debug/UniMod.tlog/link.read.1.tlog -/Debug/UniMod.tlog/link.write.1.tlog -/Debug/UniMod2.log -/Debug/Waypoints.obj -/Debug/admin.obj -/Debug/audServer.obj -/Debug/authManager.obj -/Debug/autoServer.obj -/Debug/blocksort.obj -/Debug/bugsAndChips.obj -/Debug/bzlib.obj -/Debug/cliUtil.obj -/Debug/clientView.obj -/Debug/compress.obj -/Debug/console.obj -/Debug/crctable.obj -/Debug/decompress.obj -/Debug/defs.obj -/Debug/filesystem.obj -/Debug/fxBuff.obj -/Debug/gui.obj -/Debug/huffman.obj -/Debug/imageUtil.obj -/Debug/json.obj -/Debug/keys.obj -/Debug/libVer.obj -/Debug/lpeg.obj -/Debug/lua_addons.obj -/Debug/map.obj -/Debug/mapUtil.obj -/Debug/net.obj -/Debug/player.obj -/Debug/playerExternFunction.obj -/Debug/polygon.obj -/Debug/randtable.obj -/Debug/react.obj -/Debug/replays.obj -/Debug/score.obj -/Debug/spelList.obj -/Debug/spellGet.obj -/Debug/spells.obj -/Debug/sprite.obj -/Debug/stdafx.obj -/Debug/tiles.obj -/Debug/unit.obj -/Debug/unit2.obj -/Debug/unitExternFunction.obj -/Debug/util.obj -/Debug/vc120.idb -/Debug/vc120.pdb -/Debug/webserver.obj -/Debug/windowMsg.obj -/Debug/windows.obj -/Debug/windowsUniModFunction.obj +/Debug/ +/Release/ /Libs/LuaJIT-2.0.3/luajit.vcxproj.user /Libs/LuaJIT-2.0.3/src/host/buildvm_arch.h /Libs/LuaJIT-2.0.3/src/jit/vmdef.lua @@ -78,268 +11,17 @@ /Libs/LuaJIT-2.0.3/src/lua51.lib /Libs/LuaJIT-2.0.3/src/luajit.exe /Libs/LuaJIT-2.0.3/src/luajit.log -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL2.Build.CppClean.log -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL2.tlog/CL.read.1.tlog -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL2.tlog/CL.write.1.tlog -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL2.tlog/Lib-link-cvtres.read.1.tlog -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL2.tlog/Lib-link-cvtres.write.1.tlog -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL2.tlog/SDL2.lastbuildstate -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL2.tlog/cl.command.1.tlog -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL2.tlog/lib.command.1.tlog -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL2.tlog/rc.command.1.tlog -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL2.tlog/rc.read.1.tlog -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL2.tlog/rc.write.1.tlog -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_RLEaccel.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_VS2013.log -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_assert.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_atomic.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_audio.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_audiocvt.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_audiodev.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_audiotypecvt.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_blendfillrect.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_blendline.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_blendpoint.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_blit.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_blit_0.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_blit_1.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_blit_A.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_blit_N.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_blit_auto.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_blit_copy.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_blit_slow.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_bmp.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_clipboard.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_clipboardevents.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_cpuinfo.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_d3dmath.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_directsound.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_diskaudio.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_drawline.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_drawpoint.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_dropevents.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_dummyaudio.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_dxjoystick.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_dynapi.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_egl.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_error.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_events.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_fillrect.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_gamecontroller.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_gesture.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_getenv.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_haptic.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_hints.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_iconv.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_joystick.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_keyboard.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_log.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_malloc.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_mixer.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_mmjoystick.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_mouse.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_nullevents.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_nullframebuffer.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_nullvideo.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_pixels.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_power.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_qsort.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_quit.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_rect.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_render.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_render_d3d.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_render_d3d11.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_render_gl.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_render_gles2.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_render_sw.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_rotate.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_rwops.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_shaders_gl.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_shaders_gles2.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_shape.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_spinlock.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_stdlib.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_stretch.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_string.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_surface.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_syscond.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_sysfilesystem.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_syshaptic.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_sysloadso.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_sysmutex.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_syspower.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_syssem.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_systhread.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_systimer.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_systls.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_thread.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_timer.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_touch.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_video.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_wave.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_windowevents.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_windows.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_windowsclipboard.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_windowsevents.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_windowsframebuffer.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_windowskeyboard.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_windowsmessagebox.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_windowsmodes.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_windowsmouse.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_windowsopengl.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_windowsopengles.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_windowsshape.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_windowsvideo.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_windowswindow.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_winmm.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_xaudio2.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_yuv_mmx.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/SDL_yuv_sw.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/e_atan2.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/e_log.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/e_pow.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/e_rem_pio2.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/e_sqrt.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/k_cos.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/k_rem_pio2.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/k_sin.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/s_atan.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/s_copysign.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/s_cos.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/s_fabs.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/s_floor.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/s_scalbn.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/s_sin.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/vc120.idb -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/vc120.pdb -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/version.res -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Debug/SDL2_ttf.Build.CppClean.log -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Debug/SDL2_ttf.tlog/CL.read.1.tlog -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Debug/SDL2_ttf.tlog/CL.write.1.tlog -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Debug/SDL2_ttf.tlog/Lib-link-cvtres.read.1.tlog -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Debug/SDL2_ttf.tlog/Lib-link-cvtres.write.1.tlog -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Debug/SDL2_ttf.tlog/SDL2_ttf.lastbuildstate -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Debug/SDL2_ttf.tlog/cl.command.1.tlog -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Debug/SDL2_ttf.tlog/lib.command.1.tlog -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Debug/SDL2_ttf.tlog/rc.command.1.tlog -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Debug/SDL2_ttf.tlog/rc.read.1.tlog -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Debug/SDL2_ttf.tlog/rc.write.1.tlog -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Debug/SDL_ttf.obj -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Debug/SDL_ttf_VS2012.log -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Debug/Version.res -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Debug/vc120.idb -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Debug/vc120.pdb -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/autofit.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/bdf.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/cff.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/freetype.log -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/freetype.tlog/CL.read.1.tlog -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/freetype.tlog/Lib-link.read.1.tlog -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/freetype.tlog/Lib-link.write.1.tlog -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/freetype.tlog/cl.command.1.tlog -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/freetype.tlog/cl.write.1.tlog -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/freetype.tlog/freetype.lastbuildstate -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/freetype.tlog/lib.command.1.tlog -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/freetype255d.Build.CppClean.log -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/ftbase.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/ftbbox.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/ftbitmap.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/ftcache.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/ftdebug.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/ftfstype.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/ftgasp.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/ftglyph.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/ftgxval.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/ftgzip.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/ftinit.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/ftlcdfil.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/ftlzw.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/ftmm.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/ftotval.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/ftpatent.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/ftpfr.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/ftstroke.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/ftsynth.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/ftsystem.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/fttype1.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/ftwinfnt.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/ftxf86.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/pcf.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/pfr.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/psaux.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/pshinter.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/psmodule.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/raster.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/sfnt.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/smooth.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/truetype.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/type1.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/type1cid.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/type42.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/winfnt.obj +/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/ +/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Debug/ +/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/ +/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Release/ /Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/freetype255d.pdb /Libs/SDL2.lib /Libs/SDL2_ttf.lib /Libs/freetype.lib /Libs/libpng.lib -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/ZLib/adler32.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/ZLib/compress.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/ZLib/crc32.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/ZLib/deflate.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/ZLib/gzclose.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/ZLib/gzlib.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/ZLib/gzread.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/ZLib/gzwrite.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/ZLib/infback.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/ZLib/inffast.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/ZLib/inflate.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/ZLib/inftrees.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/ZLib/trees.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/ZLib/uncompr.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/ZLib/vc120.idb -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/ZLib/vc120.pdb -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/ZLib/zlib.Build.CppClean.log -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/ZLib/zlib.log -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/ZLib/zlib.tlog/CL.read.1.tlog -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/ZLib/zlib.tlog/CL.write.1.tlog -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/ZLib/zlib.tlog/Lib-link.read.1.tlog -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/ZLib/zlib.tlog/Lib-link.write.1.tlog -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/ZLib/zlib.tlog/cl.command.1.tlog -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/ZLib/zlib.tlog/lib.command.1.tlog -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/ZLib/zlib.tlog/zlib.lastbuildstate -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/ZLib/zutil.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/libpng.Build.CppClean.log -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/libpng.log -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/libpng.pch -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/libpng.tlog/CL.read.1.tlog -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/libpng.tlog/CL.write.1.tlog -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/libpng.tlog/Lib-link.read.1.tlog -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/libpng.tlog/Lib-link.write.1.tlog -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/libpng.tlog/cl.command.1.tlog -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/libpng.tlog/lib.command.1.tlog -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/libpng.tlog/libpng.lastbuildstate -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/png.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/pngerror.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/pngget.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/pngmem.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/pngpread.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/pngread.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/pngrio.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/pngrtran.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/pngrutil.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/pngset.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/pngtrans.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/pngwio.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/pngwrite.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/pngwtran.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/pngwutil.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/vc120.idb -/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/vc120.pdb -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/ZLib/zlib.Build.CppClean.log -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/ZLib/zlib.log -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/libpng.Build.CppClean.log -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/libpng.log +/Libs/lpng151/projects/visualc71/Win32_LIB_Debug/ +/Libs/lpng151/projects/visualc71/Win32_LIB_Release/ /Libs/luajit.lib /Libs/luasocket/src/auxiliar.obj /Libs/luasocket/src/buffer.obj @@ -366,363 +48,18 @@ /Libs/luasocket/src/wsocket.obj /Libs/socket.lib /Libs/zlib.lib -/Release/UniMod.Build.CppClean.log -/Release/UniMod.tlog/unsuccessfulbuild -/Release/UniMod2.log /UniMod2.vcxproj.user /UniModNew.opensdf /UniModNew.sdf /UniModNew.v12.suo -/ipch/unimod2-11107902/unimod-62249a38.ipch -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL2.Build.CppClean.log -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Release/SDL2_ttf.Build.CppClean.log -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/freetype255.Build.CppClean.log -/Debug/UniMod.dll.intermediate.manifest -/Debug/UniMod.dll.manifest -/Debug/UniMod.tlog/mt.command.1.tlog -/Debug/UniMod.tlog/mt.read.1.tlog -/Debug/UniMod.tlog/mt.write.1.tlog -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/ZLib/adler32.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/ZLib/compress.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/ZLib/crc32.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/ZLib/deflate.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/ZLib/gzclose.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/ZLib/gzlib.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/ZLib/gzread.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/ZLib/gzwrite.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/ZLib/infback.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/ZLib/inffast.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/ZLib/inflate.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/ZLib/inftrees.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/ZLib/trees.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/ZLib/uncompr.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/ZLib/vc120.pdb -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/ZLib/zlib.tlog/CL.read.1.tlog -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/ZLib/zlib.tlog/CL.write.1.tlog -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/ZLib/zlib.tlog/Lib-link.read.1.tlog -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/ZLib/zlib.tlog/Lib-link.write.1.tlog -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/ZLib/zlib.tlog/cl.command.1.tlog -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/ZLib/zlib.tlog/lib.command.1.tlog -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/ZLib/zlib.tlog/zlib.lastbuildstate -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/ZLib/zutil.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/libpng.pch -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/libpng.tlog/CL.read.1.tlog -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/libpng.tlog/CL.write.1.tlog -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/libpng.tlog/Lib-link.read.1.tlog -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/libpng.tlog/Lib-link.write.1.tlog -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/libpng.tlog/cl.command.1.tlog -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/libpng.tlog/lib.command.1.tlog -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/libpng.tlog/libpng.lastbuildstate -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/png.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/pngerror.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/pngget.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/pngmem.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/pngpread.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/pngread.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/pngrio.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/pngrtran.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/pngrutil.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/pngset.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/pngtrans.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/pngwio.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/pngwrite.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/pngwtran.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/pngwutil.obj -/Libs/lpng151/projects/visualc71/Win32_LIB_Release/vc120.pdb -/Release/SDL.obj -/Release/SHA1.obj -/Release/SendBuffer.obj -/Release/UniMod.dll.intermediate.manifest -/Release/UniMod.dll.manifest -/Release/UniMod.exp -/Release/UniMod.lib -/Release/UniMod.obj -/Release/UniMod.pch -/Release/UniMod.pdb -/Release/UniMod.tlog/CL.read.1.tlog -/Release/UniMod.tlog/CL.write.1.tlog -/Release/UniMod.tlog/UniMod.lastbuildstate -/Release/UniMod.tlog/UniMod.write.1u.tlog -/Release/UniMod.tlog/cl.command.1.tlog -/Release/UniMod.tlog/link.command.1.tlog -/Release/UniMod.tlog/link.read.1.tlog -/Release/UniMod.tlog/link.write.1.tlog -/Release/UniMod.tlog/mt.command.1.tlog -/Release/UniMod.tlog/mt.read.1.tlog -/Release/UniMod.tlog/mt.write.1.tlog -/Release/Waypoints.obj -/Release/admin.obj -/Release/audServer.obj -/Release/authManager.obj -/Release/autoServer.obj -/Release/blocksort.obj -/Release/bugsAndChips.obj -/Release/bzlib.obj -/Release/cliUtil.obj -/Release/clientView.obj -/Release/compress.obj -/Release/console.obj -/Release/crctable.obj -/Release/decompress.obj -/Release/defs.obj -/Release/filesystem.obj -/Release/fxBuff.obj -/Release/gui.obj -/Release/huffman.obj -/Release/imageUtil.obj -/Release/json.obj -/Release/keys.obj -/Release/libVer.obj -/Release/lpeg.obj -/Release/lua_addons.obj -/Release/map.obj -/Release/mapUtil.obj -/Release/net.obj -/Release/player.obj -/Release/playerExternFunction.obj -/Release/polygon.obj -/Release/randtable.obj -/Release/react.obj -/Release/replays.obj -/Release/score.obj -/Release/spelList.obj -/Release/spellGet.obj -/Release/spells.obj -/Release/sprite.obj -/Release/stdafx.obj -/Release/tiles.obj -/Release/unit.obj -/Release/unit2.obj -/Release/unitExternFunction.obj -/Release/util.obj -/Release/vc120.pdb -/Release/webserver.obj -/Release/windowMsg.obj -/Release/windows.obj -/Release/windowsUniModFunction.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL2.tlog/CL.read.1.tlog -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL2.tlog/CL.write.1.tlog -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL2.tlog/Lib-link-cvtres.read.1.tlog -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL2.tlog/Lib-link-cvtres.write.1.tlog -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL2.tlog/SDL2.lastbuildstate -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL2.tlog/cl.command.1.tlog -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL2.tlog/lib.command.1.tlog -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL2.tlog/rc.command.1.tlog -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL2.tlog/rc.read.1.tlog -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL2.tlog/rc.write.1.tlog -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_RLEaccel.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_VS2013.log -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_assert.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_atomic.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_audio.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_audiocvt.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_audiodev.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_audiotypecvt.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_blendfillrect.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_blendline.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_blendpoint.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_blit.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_blit_0.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_blit_1.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_blit_A.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_blit_N.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_blit_auto.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_blit_copy.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_blit_slow.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_bmp.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_clipboard.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_clipboardevents.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_cpuinfo.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_d3dmath.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_directsound.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_diskaudio.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_drawline.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_drawpoint.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_dropevents.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_dummyaudio.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_dxjoystick.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_dynapi.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_egl.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_error.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_events.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_fillrect.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_gamecontroller.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_gesture.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_getenv.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_haptic.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_hints.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_iconv.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_joystick.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_keyboard.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_log.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_malloc.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_mixer.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_mmjoystick.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_mouse.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_nullevents.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_nullframebuffer.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_nullvideo.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_pixels.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_power.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_qsort.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_quit.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_rect.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_render.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_render_d3d.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_render_d3d11.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_render_gl.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_render_gles2.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_render_sw.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_rotate.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_rwops.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_shaders_gl.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_shaders_gles2.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_shape.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_spinlock.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_stdlib.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_stretch.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_string.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_surface.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_syscond.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_sysfilesystem.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_syshaptic.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_sysloadso.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_sysmutex.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_syspower.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_syssem.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_systhread.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_systimer.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_systls.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_thread.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_timer.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_touch.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_video.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_wave.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_windowevents.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_windows.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_windowsclipboard.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_windowsevents.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_windowsframebuffer.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_windowskeyboard.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_windowsmessagebox.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_windowsmodes.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_windowsmouse.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_windowsopengl.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_windowsopengles.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_windowsshape.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_windowsvideo.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_windowswindow.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_winmm.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_xaudio2.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_yuv_mmx.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/SDL_yuv_sw.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/e_atan2.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/e_log.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/e_pow.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/e_rem_pio2.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/e_sqrt.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/k_cos.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/k_rem_pio2.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/k_sin.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/s_atan.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/s_copysign.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/s_cos.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/s_fabs.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/s_floor.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/s_scalbn.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/s_sin.obj -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/vc120.pdb -/Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/version.res -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Release/SDL2_ttf.tlog/CL.read.1.tlog -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Release/SDL2_ttf.tlog/CL.write.1.tlog -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Release/SDL2_ttf.tlog/Lib-link-cvtres.read.1.tlog -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Release/SDL2_ttf.tlog/Lib-link-cvtres.write.1.tlog -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Release/SDL2_ttf.tlog/SDL2_ttf.lastbuildstate -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Release/SDL2_ttf.tlog/cl.command.1.tlog -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Release/SDL2_ttf.tlog/lib.command.1.tlog -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Release/SDL2_ttf.tlog/rc.command.1.tlog -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Release/SDL2_ttf.tlog/rc.read.1.tlog -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Release/SDL2_ttf.tlog/rc.write.1.tlog -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Release/SDL_ttf.obj -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Release/SDL_ttf_VS2012.log -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Release/Version.res -/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Release/vc120.pdb -/Libs/SDL/VQA/Debug/VQA_XCC.log -/Libs/SDL/VQA/Debug/VQA_XCC.tlog/CL.read.1.tlog -/Libs/SDL/VQA/Debug/VQA_XCC.tlog/CL.write.1.tlog -/Libs/SDL/VQA/Debug/VQA_XCC.tlog/Lib-link.read.1.tlog -/Libs/SDL/VQA/Debug/VQA_XCC.tlog/Lib-link.write.1.tlog -/Libs/SDL/VQA/Debug/VQA_XCC.tlog/VQA_XCC.lastbuildstate -/Libs/SDL/VQA/Debug/VQA_XCC.tlog/cl.command.1.tlog -/Libs/SDL/VQA/Debug/VQA_XCC.tlog/lib.command.1.tlog -/Libs/SDL/VQA/Debug/aud_decode.obj -/Libs/SDL/VQA/Debug/ddpf_conversion.obj -/Libs/SDL/VQA/Debug/vc120.idb -/Libs/SDL/VQA/Debug/vc120.pdb -/Libs/SDL/VQA/Debug/vqa_decode.obj -/Libs/SDL/VQA/Debug/vqa_file.obj -/Libs/SDL/VQA/Release/VQA_XCC.log -/Libs/SDL/VQA/Release/VQA_XCC.tlog/CL.read.1.tlog -/Libs/SDL/VQA/Release/VQA_XCC.tlog/CL.write.1.tlog -/Libs/SDL/VQA/Release/VQA_XCC.tlog/Lib-link.read.1.tlog -/Libs/SDL/VQA/Release/VQA_XCC.tlog/Lib-link.write.1.tlog -/Libs/SDL/VQA/Release/VQA_XCC.tlog/VQA_XCC.lastbuildstate -/Libs/SDL/VQA/Release/VQA_XCC.tlog/cl.command.1.tlog -/Libs/SDL/VQA/Release/VQA_XCC.tlog/lib.command.1.tlog -/Libs/SDL/VQA/Release/aud_decode.obj -/Libs/SDL/VQA/Release/ddpf_conversion.obj -/Libs/SDL/VQA/Release/vc120.pdb -/Libs/SDL/VQA/Release/vqa_decode.obj -/Libs/SDL/VQA/Release/vqa_file.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/autofit.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/bdf.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/cff.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/freetype.log -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/freetype.tlog/CL.read.1.tlog -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/freetype.tlog/Lib-link.read.1.tlog -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/freetype.tlog/Lib-link.write.1.tlog -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/freetype.tlog/cl.command.1.tlog -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/freetype.tlog/cl.write.1.tlog -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/freetype.tlog/freetype.lastbuildstate -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/freetype.tlog/lib.command.1.tlog -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/ftbase.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/ftbbox.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/ftbitmap.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/ftcache.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/ftdebug.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/ftfstype.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/ftgasp.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/ftglyph.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/ftgxval.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/ftgzip.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/ftinit.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/ftlcdfil.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/ftlzw.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/ftmm.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/ftotval.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/ftpatent.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/ftpfr.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/ftstroke.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/ftsynth.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/ftsystem.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/fttype1.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/ftwinfnt.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/ftxf86.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/pcf.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/pfr.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/psaux.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/pshinter.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/psmodule.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/raster.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/sfnt.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/smooth.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/truetype.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/type1.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/type1cid.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/type42.obj -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/winfnt.obj +/ipch/*.ipch +/Libs/SDL/SDL2-2.0.8/VisualC/SDL/Win32/Release/ +/Libs/SDL/SDL2-2.0.8/VisualC/SDL/Win32/Debug/ +/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Release/ +/Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Debug/ +/Libs/SDL/VQA/Debug/ +/Libs/SDL/VQA/Release/ +/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/ /Libs/VQA.lib -/Libs/SDL/VQA/Release/VQA_XCC.Build.CppClean.log -/Libs/SDL/VQA/Debug/VQA_XCC.Build.CppClean.log -/ipch/unimod2-11107902/*.ipch +/Libs/SDL/VQA/Release/ +/Libs/SDL/VQA/Debug/ diff --git a/Libs/SDL/SDL2-2.0.8/VisualC/SDL/SDL.vcxproj b/Libs/SDL/SDL2-2.0.8/VisualC/SDL/SDL.vcxproj index a649364..4d7445f 100644 --- a/Libs/SDL/SDL2-2.0.8/VisualC/SDL/SDL.vcxproj +++ b/Libs/SDL/SDL2-2.0.8/VisualC/SDL/SDL.vcxproj @@ -27,11 +27,11 @@ StaticLibrary - v141_xp + v110_xp StaticLibrary - v141_xp + v110_xp DynamicLibrary diff --git a/Libs/SDL/SDL2_ttf-2.0.12/VisualC/SDL_ttf_VS2012.vcxproj b/Libs/SDL/SDL2_ttf-2.0.12/VisualC/SDL_ttf_VS2012.vcxproj index be7795c..191e6e9 100644 --- a/Libs/SDL/SDL2_ttf-2.0.12/VisualC/SDL_ttf_VS2012.vcxproj +++ b/Libs/SDL/SDL2_ttf-2.0.12/VisualC/SDL_ttf_VS2012.vcxproj @@ -27,12 +27,12 @@ StaticLibrary false - v141_xp + v110_xp StaticLibrary false - v141_xp + v110_xp DynamicLibrary diff --git a/Libs/SDL/VQA/VQA_XCC.vcxproj b/Libs/SDL/VQA/VQA_XCC.vcxproj index e4ac2d0..131f712 100644 --- a/Libs/SDL/VQA/VQA_XCC.vcxproj +++ b/Libs/SDL/VQA/VQA_XCC.vcxproj @@ -19,12 +19,12 @@ StaticLibrary true - v141_xp + v110_xp StaticLibrary false - v141_xp + v110_xp diff --git a/Libs/SDL/freetype-2.5.5/builds/windows/vc2010/freetype.vcxproj b/Libs/SDL/freetype-2.5.5/builds/windows/vc2010/freetype.vcxproj index 0f191fa..c7becc9 100644 --- a/Libs/SDL/freetype-2.5.5/builds/windows/vc2010/freetype.vcxproj +++ b/Libs/SDL/freetype-2.5.5/builds/windows/vc2010/freetype.vcxproj @@ -59,7 +59,7 @@ StaticLibrary false MultiByte - v141_xp + v110_xp StaticLibrary @@ -95,7 +95,7 @@ StaticLibrary false MultiByte - v141_xp + v110_xp StaticLibrary diff --git a/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/freetype.log b/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/freetype.log new file mode 100644 index 0000000..6fbf86a --- /dev/null +++ b/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/freetype.log @@ -0,0 +1,8 @@ +п»їBuild started 13.04.2020 20:55:50. + 1>Project "C:\Repos\UniMod\Libs\SDL\freetype-2.5.5\builds\windows\vc2010\freetype.vcxproj" on node 2 (Clean target(s)). + Project file contains ToolsVersion="15.0". This toolset may be unknown or missing, in which case you may be able to resolve this by installing the appropriate version of MSBuild, or the build may have been forced to a particular ToolsVersion for policy reasons. Treating the project as if it had ToolsVersion="4.0". For more information, please see http://go.microsoft.com/fwlink/?LinkId=291333. + 1>Done Building Project "C:\Repos\UniMod\Libs\SDL\freetype-2.5.5\builds\windows\vc2010\freetype.vcxproj" (Clean target(s)). + +Build succeeded. + +Time Elapsed 00:00:00.00 diff --git a/Libs/lpng151/projects/visualc71/libpng.vcxproj b/Libs/lpng151/projects/visualc71/libpng.vcxproj index 8898a18..3dcb835 100644 --- a/Libs/lpng151/projects/visualc71/libpng.vcxproj +++ b/Libs/lpng151/projects/visualc71/libpng.vcxproj @@ -30,11 +30,11 @@ StaticLibrary - v141_xp + v110_xp StaticLibrary - v141_xp + v110_xp DynamicLibrary diff --git a/Libs/lpng151/projects/visualc71/zlib.vcxproj b/Libs/lpng151/projects/visualc71/zlib.vcxproj index 1b2af03..adc470f 100644 --- a/Libs/lpng151/projects/visualc71/zlib.vcxproj +++ b/Libs/lpng151/projects/visualc71/zlib.vcxproj @@ -26,11 +26,11 @@ StaticLibrary - v141_xp + v110_xp StaticLibrary - v141_xp + v110_xp DynamicLibrary diff --git a/Libs/luasocket/socket.vcxproj b/Libs/luasocket/socket.vcxproj index e1c448f..db53247 100644 --- a/Libs/luasocket/socket.vcxproj +++ b/Libs/luasocket/socket.vcxproj @@ -18,12 +18,12 @@ StaticLibrary - v141_xp + v110_xp MultiByte StaticLibrary - v141_xp + v110_xp MultiByte diff --git a/SDL.cpp b/SDL.cpp index 8049d38..bc1ce6b 100644 --- a/SDL.cpp +++ b/SDL.cpp @@ -11,6 +11,7 @@ LPDIRECTSOUND* noxDsound = (LPDIRECTSOUND*)0x83A1AC; +// Do not load SDL because this may cause conflict between new SDL patch and ours bool SDL_enabled = false; extern std::string getGameDirectory(); @@ -767,11 +768,11 @@ extern void InjectOffs(DWORD Addr, void *Fn); extern void InjectData(DWORD offset, byte* buff, size_t size); void initSDL() { - // Get the players settings - ReadConfigFile(); - if (SDL_enabled) { + // Get the players settings + ReadConfigFile(); + InjectJumpTo((DWORD)pTrueMessageLoop, &MessageLoop); InjectJumpTo((DWORD)pTrueMouseInit, &MouseInit); InjectJumpTo((DWORD)pTrueGetMouseData, &GetMouseData); diff --git a/UniMod2.vcxproj b/UniMod2.vcxproj index 7e40c62..5e19ba2 100644 --- a/UniMod2.vcxproj +++ b/UniMod2.vcxproj @@ -22,12 +22,12 @@ DynamicLibrary MultiByte true - v141_xp + v110_xp DynamicLibrary MultiByte - v141_xp + v110_xp @@ -101,7 +101,6 @@ Shlwapi.lib;User32.lib;Psapi.lib;libcmt.lib;%(AdditionalDependencies) - ..\$(ProjectName).dll true Windows true diff --git a/UniModNew.v11.suo b/UniModNew.v11.suo new file mode 100644 index 0000000000000000000000000000000000000000..4963d59584fefdf7a4c380d4fd3f499a1426168c GIT binary patch literal 18944 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 U(%av%vL8O*U2JO})46H+A6kUG!Tflags & 0x20) // DESTROYED + { + return false; + } + + if (unit->inventoryOwner != NULL) + { + if (unit->inventoryOwner == unit) // Recursion, something is wrong + { + return false; + } + return checkExistsImpl(unit->inventoryOwner); + } + + bool result = false; + bigUnitStruct* first = *srvObjGeneralList; + + if (unit->Class & 1) // MISSILE + { + first = *srvObjMissileList; + } + + while (first != NULL) + { + if (first == unit) + { + result = true; + break; + } + first = (bigUnitStruct*)first->nextUnit; + } + return result; + } + int unitCheckExists(lua_State*L) + { + if (lua_type(L,1)!=LUA_TLIGHTUSERDATA) + { + lua_pushstring(L,"wrong args!"); + lua_error_(L); + } + bigUnitStruct* unit = (bigUnitStruct*)lua_touserdata(L, 1); + bool result = checkExistsImpl(unit); + + lua_pushboolean(L, result); + return 1; + } int unitInventoryPut(lua_State*L) { if ( @@ -373,6 +429,8 @@ void unitInit() ASSIGN(noxAgressionLevel,0x00515980); ASSIGN(noxMirrorShot,0x004E0A70); ASSIGN(noxUnitTestBuff,0x004FF350); + ASSIGN(srvObjGeneralList, 0x750700); + ASSIGN(srvObjMissileList, 0x750704); registerserver("unitSetFollow",&unitSetFollowL); registerserver("unitBecomePet",&unitBecomePetL); @@ -387,6 +445,7 @@ void unitInit() registerserver("unitHunt",&unitHuntL); registerserver("unitSetAgression",&unitAgressionLevel); registerserver("unitTestBuff",&unitTestBuff); + registerserver("unitCheckExists",&unitCheckExists); registerserver("unitMove",&unitMoveL); registerserver("unitSpeed",&unitSpeedL); diff --git a/unit.h b/unit.h index 94e44e1..eb42b8e 100644 --- a/unit.h +++ b/unit.h @@ -194,10 +194,9 @@ struct bigUnitStruct int nextUpdatableUnit; int prevUpdatableUnit; int isInUpdatableList; - char unitWeight; - char gap_1e9[1]; + __int16 unitWeight; __int16 unitCapacity; - void *prevInventoryObj; + bigUnitStruct *inventoryOwner; void *nextInventoryObj; void *prevSome; void *firstInventoryObj; diff --git a/unit2.cpp b/unit2.cpp index 31af535..18ffb54 100644 --- a/unit2.cpp +++ b/unit2.cpp @@ -203,7 +203,7 @@ namespace break; lua_pushvalue(L, -2); lua_pushlightuserdata(L, Armor); - lua_pushlightuserdata(L, Armor->prevInventoryObj); + lua_pushlightuserdata(L, Armor->inventoryOwner); if (lua_pcall(L, 3, 0, 0) != 0) { break; diff --git a/util.cpp b/util.cpp index 3b3f3d1..a29e48d 100644 --- a/util.cpp +++ b/util.cpp @@ -277,7 +277,7 @@ int setGameFlagsL(lua_State *L) } int bitOrL(lua_State *L) { - int R; + unsigned int R; if(lua_type(L,1)!=LUA_TNUMBER) return 0; if(lua_type(L,2)!=LUA_TNUMBER) @@ -288,7 +288,7 @@ int bitOrL(lua_State *L) } int bitAndL(lua_State *L) { - int R; + unsigned int R; if(lua_type(L,1)!=LUA_TNUMBER) return 0; if(lua_type(L,2)!=LUA_TNUMBER) @@ -300,7 +300,7 @@ int bitAndL(lua_State *L) int bitXorL(lua_State *L) { - int R; + unsigned int R; if(lua_type(L,1)!=LUA_TNUMBER) return 0; if(lua_type(L,2)!=LUA_TNUMBER) @@ -531,6 +531,20 @@ namespace lua_pushinteger(L, *((BYTE*)P)); return 1; } + int getPtrUIntL(lua_State *L) + { + if ( (lua_type(L,1)!=LUA_TLIGHTUSERDATA)||(lua_type(L,2)!=LUA_TNUMBER) ) + { + lua_pushstring(L,"wrong args!"); + lua_error_(L); + } + BYTE* P=(BYTE*) lua_touserdata(L,1); + if(P==NULL) + return 0; + P+=lua_tointeger(L,2); + lua_pushnumber(L, *((_Uint32t*)P)); + return 1; + } int getPtrIntL(lua_State *L) { if ( (lua_type(L,1)!=LUA_TLIGHTUSERDATA)||(lua_type(L,2)!=LUA_TNUMBER) ) @@ -646,6 +660,31 @@ namespace VirtualProtect(P,4,OldProtect,&OldProtect); return 0; } + int setPtrUIntL(lua_State *L) + { + if ( ((lua_type(L,1)!=LUA_TLIGHTUSERDATA)&& (lua_type(L,1)!=LUA_TNIL)) + ||(lua_type(L,2)!=LUA_TNUMBER) + ||(lua_type(L,3)!=LUA_TNUMBER)) + { + lua_pushstring(L,"wrong args!"); + lua_error_(L); + } + BYTE* P=(BYTE*) lua_touserdata(L,1); + if (P==NULL) + return 0; + P+=lua_tointeger(L,2); + DWORD Pt=(DWORD)P; + DWORD OldProtect; + if( ((lua_type(L,1)==LUA_TNIL)) &&( (Pt<0x400000) || (Pt>0x600000) ) ) + { + lua_pushstring(L,"wrong offset!"); + lua_error_(L); + } + VirtualProtect(P,4,PAGE_EXECUTE_READWRITE,&OldProtect); + *((_Uint32t*)P) = lua_tointeger(L, 3); + VirtualProtect(P,4,OldProtect,&OldProtect); + return 0; + } int setPtrShortL(lua_State *L) { if ( ((lua_type(L,1)!=LUA_TLIGHTUSERDATA)&& (lua_type(L,1)!=LUA_TNIL)) @@ -1184,7 +1223,7 @@ int initWindowedMode(int param1, int param2, int param3) void injectCon() { initSDL(); - //MessageBox(0,"!",0,0); + //MessageBox(0,"!1",0,0); exInit(); initModLib2(); luaopen_lpeg (L); @@ -1278,6 +1317,8 @@ void injectCon() lua_setglobal(L,"getPtrPtr"); lua_pushcfunction(L,&getPtrIntL); lua_setglobal(L,"getPtrInt"); + lua_pushcfunction(L,&getPtrUIntL); + lua_setglobal(L,"getPtrUInt"); lua_pushcfunction(L,&getPtrFloatL); lua_setglobal(L,"getPtrFloat"); lua_pushcfunction(L,&getPtrShortL); @@ -1286,6 +1327,8 @@ void injectCon() lua_setglobal(L,"setPtrFloat"); lua_pushcfunction(L,&setPtrIntL); lua_setglobal(L,"setPtrInt"); + lua_pushcfunction(L,&setPtrUIntL); + lua_setglobal(L,"setPtrUInt"); lua_pushcfunction(L,&setPtrPtrL); lua_setglobal(L,"setPtrPtr"); lua_pushcfunction(L,&setPtrShortL); @@ -1393,7 +1436,7 @@ void injectCon() } - //MessageBox(0,"!",0,0); + //MessageBox(0,"!2",0,0); byte OperatorJmps=0xEB; byte OperatorMovEax1[]={0xB8,0x01,0,0,0}; @@ -1418,6 +1461,7 @@ void injectCon() // Убиваем (или чиним?...) сисоп-закладку: InjectAddr(0x444158 + 1, &hostIdx); + //MessageBox(0,"!3",0,0); registerclient("getGameDirectory", &getGameDirectoryL); registerclient("getNormalizedPath", &getNormalizedPathL); From 97623a969918ad147b75212ae56e38466a875667 Mon Sep 17 00:00:00 2001 From: AngryKirC Date: Fri, 24 Apr 2020 21:58:48 +0400 Subject: [PATCH 2/7] Removing legacy code for the sake of stability; Added anti-crash checks for multiplayer servers --- .gitignore | 46 +- Libs/LuaJIT-2.0.3/src/lj_bcdef.h | 226 ++++ Libs/LuaJIT-2.0.3/src/lj_ffdef.h | 210 ++++ Libs/LuaJIT-2.0.3/src/lj_folddef.h | 1068 +++++++++++++++++ Libs/LuaJIT-2.0.3/src/lj_libdef.h | 393 ++++++ Libs/LuaJIT-2.0.3/src/lj_recdef.h | 263 ++++ Libs/SDL/freetype-2.5.5/objs/README | 2 - .../objs/vc2010/Win32/Debug/freetype.log | 8 - UniModNew.v11.suo | Bin 18944 -> 0 bytes bugsAndChips.cpp | 38 +- console.cpp | 2 - libVer.cpp | 12 +- net.cpp | 39 +- util.cpp | 10 +- 14 files changed, 2226 insertions(+), 91 deletions(-) create mode 100644 Libs/LuaJIT-2.0.3/src/lj_bcdef.h create mode 100644 Libs/LuaJIT-2.0.3/src/lj_ffdef.h create mode 100644 Libs/LuaJIT-2.0.3/src/lj_folddef.h create mode 100644 Libs/LuaJIT-2.0.3/src/lj_libdef.h create mode 100644 Libs/LuaJIT-2.0.3/src/lj_recdef.h delete mode 100644 Libs/SDL/freetype-2.5.5/objs/README delete mode 100644 Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/freetype.log delete mode 100644 UniModNew.v11.suo diff --git a/.gitignore b/.gitignore index 6a425da..6443553 100644 --- a/.gitignore +++ b/.gitignore @@ -1,21 +1,17 @@ /Debug/ /Release/ +/Libs/SDL/freetype-2.5.5/objs/ /Libs/LuaJIT-2.0.3/luajit.vcxproj.user /Libs/LuaJIT-2.0.3/src/host/buildvm_arch.h -/Libs/LuaJIT-2.0.3/src/jit/vmdef.lua -/Libs/LuaJIT-2.0.3/src/lj_bcdef.h -/Libs/LuaJIT-2.0.3/src/lj_ffdef.h -/Libs/LuaJIT-2.0.3/src/lj_folddef.h -/Libs/LuaJIT-2.0.3/src/lj_libdef.h -/Libs/LuaJIT-2.0.3/src/lj_recdef.h -/Libs/LuaJIT-2.0.3/src/lua51.lib +/Libs/LuaJIT-2.0.3/src/*.obj +/Libs/LuaJIT-2.0.3/src/*.lib /Libs/LuaJIT-2.0.3/src/luajit.exe /Libs/LuaJIT-2.0.3/src/luajit.log +/Libs/LuaJIT-2.0.3/src/jit/vmdef.lua /Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/ /Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Debug/ /Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/ /Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Release/ -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/freetype255d.pdb /Libs/SDL2.lib /Libs/SDL2_ttf.lib /Libs/freetype.lib @@ -23,43 +19,21 @@ /Libs/lpng151/projects/visualc71/Win32_LIB_Debug/ /Libs/lpng151/projects/visualc71/Win32_LIB_Release/ /Libs/luajit.lib -/Libs/luasocket/src/auxiliar.obj -/Libs/luasocket/src/buffer.obj -/Libs/luasocket/src/except.obj -/Libs/luasocket/src/inet.obj -/Libs/luasocket/src/io.obj -/Libs/luasocket/src/luasocket.obj -/Libs/luasocket/src/options.obj -/Libs/luasocket/src/select.obj -/Libs/luasocket/src/socket.Build.CppClean.log -/Libs/luasocket/src/socket.log -/Libs/luasocket/src/socket.tlog/CL.read.1.tlog -/Libs/luasocket/src/socket.tlog/CL.write.1.tlog -/Libs/luasocket/src/socket.tlog/Lib-link.read.1.tlog -/Libs/luasocket/src/socket.tlog/Lib-link.write.1.tlog -/Libs/luasocket/src/socket.tlog/cl.command.1.tlog -/Libs/luasocket/src/socket.tlog/lib.command.1.tlog -/Libs/luasocket/src/socket.tlog/socket.lastbuildstate -/Libs/luasocket/src/tcp.obj -/Libs/luasocket/src/timeout.obj -/Libs/luasocket/src/udp.obj -/Libs/luasocket/src/vc120.idb -/Libs/luasocket/src/vc120.pdb -/Libs/luasocket/src/wsocket.obj -/Libs/socket.lib -/Libs/zlib.lib +/Libs/luasocket/src/*.log +/Libs/luasocket/src/*.obj +/Libs/luasocket/src/*.lib +/Libs/*.lib /UniMod2.vcxproj.user /UniModNew.opensdf /UniModNew.sdf -/UniModNew.v12.suo -/ipch/*.ipch +/*.suo +/ipch /Libs/SDL/SDL2-2.0.8/VisualC/SDL/Win32/Release/ /Libs/SDL/SDL2-2.0.8/VisualC/SDL/Win32/Debug/ /Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Release/ /Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Debug/ /Libs/SDL/VQA/Debug/ /Libs/SDL/VQA/Release/ -/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Release/ /Libs/VQA.lib /Libs/SDL/VQA/Release/ /Libs/SDL/VQA/Debug/ diff --git a/Libs/LuaJIT-2.0.3/src/lj_bcdef.h b/Libs/LuaJIT-2.0.3/src/lj_bcdef.h new file mode 100644 index 0000000..394ca30 --- /dev/null +++ b/Libs/LuaJIT-2.0.3/src/lj_bcdef.h @@ -0,0 +1,226 @@ +/* This is a generated file. DO NOT EDIT! */ + +LJ_DATADEF const uint16_t lj_bc_ofs[] = { +0, +65, +130, +195, +260, +387, +517, +577, +637, +701, +765, +816, +866, +916, +966, +1006, +1046, +1077, +1108, +1144, +1212, +1255, +1298, +1341, +1384, +1432, +1475, +1518, +1561, +1604, +1632, +1686, +1740, +1794, +1848, +1887, +1946, +2034, +2067, +2100, +2123, +2146, +2169, +2211, +2251, +2334, +2412, +2444, +2476, +2526, +2596, +2709, +2796, +2812, +2828, +2976, +3102, +3205, +3376, +3615, +3741, +3883, +3928, +3969, +3973, +4119, +4194, +4364, +4552, +4639, +4643, +4772, +4859, +4964, +5041, +5126, +5145, +5200, +5252, +5271, +5314, +5352, +5371, +5388, +5418, +5442, +5461, +5522, +5575, +5575, +5692, +5693, +5769, +7416, +7487, +7961, +8081, +8138, +8253, +7536, +7678, +7768, +7835, +7861, +8308, +8348, +8980, +8403, +8719, +9022, +9122, +9141, +9160, +9218, +9248, +9279, +9307, +9335, +9365, +9403, +9443, +9473, +9511, +9549, +9703, +9838, +9587, +9587, +9188, +9619, +9974, +9926, +9660, +10018, +10065, +10972, +11297, +11254, +11358, +11426, +11497, +11568, +11639, +11016, +11098, +11180, +10119, +10148, +10199, +10313, +10478, +10603, +10709, +10820, +10931 +}; + +LJ_DATADEF const uint16_t lj_bc_mode[] = { +BCDEF(BCMODE) +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF, +BCMODE_FF +}; + diff --git a/Libs/LuaJIT-2.0.3/src/lj_ffdef.h b/Libs/LuaJIT-2.0.3/src/lj_ffdef.h new file mode 100644 index 0000000..29dd4d3 --- /dev/null +++ b/Libs/LuaJIT-2.0.3/src/lj_ffdef.h @@ -0,0 +1,210 @@ +/* This is a generated file. DO NOT EDIT! */ + +FFDEF(assert) +FFDEF(type) +FFDEF(next) +FFDEF(pairs) +FFDEF(ipairs_aux) +FFDEF(ipairs) +FFDEF(getmetatable) +FFDEF(setmetatable) +FFDEF(getfenv) +FFDEF(setfenv) +FFDEF(rawget) +FFDEF(rawset) +FFDEF(rawequal) +FFDEF(unpack) +FFDEF(select) +FFDEF(tonumber) +FFDEF(tostring) +FFDEF(error) +FFDEF(pcall) +FFDEF(xpcall) +FFDEF(loadfile) +FFDEF(load) +FFDEF(loadstring) +FFDEF(dofile) +FFDEF(gcinfo) +FFDEF(collectgarbage) +FFDEF(newproxy) +FFDEF(print) +FFDEF(coroutine_status) +FFDEF(coroutine_running) +FFDEF(coroutine_create) +FFDEF(coroutine_yield) +FFDEF(coroutine_resume) +FFDEF(coroutine_wrap_aux) +FFDEF(coroutine_wrap) +FFDEF(math_abs) +FFDEF(math_floor) +FFDEF(math_ceil) +FFDEF(math_sqrt) +FFDEF(math_log10) +FFDEF(math_exp) +FFDEF(math_sin) +FFDEF(math_cos) +FFDEF(math_tan) +FFDEF(math_asin) +FFDEF(math_acos) +FFDEF(math_atan) +FFDEF(math_sinh) +FFDEF(math_cosh) +FFDEF(math_tanh) +FFDEF(math_frexp) +FFDEF(math_modf) +FFDEF(math_deg) +FFDEF(math_rad) +FFDEF(math_log) +FFDEF(math_atan2) +FFDEF(math_pow) +FFDEF(math_fmod) +FFDEF(math_ldexp) +FFDEF(math_min) +FFDEF(math_max) +FFDEF(math_random) +FFDEF(math_randomseed) +FFDEF(bit_tobit) +FFDEF(bit_bnot) +FFDEF(bit_bswap) +FFDEF(bit_lshift) +FFDEF(bit_rshift) +FFDEF(bit_arshift) +FFDEF(bit_rol) +FFDEF(bit_ror) +FFDEF(bit_band) +FFDEF(bit_bor) +FFDEF(bit_bxor) +FFDEF(bit_tohex) +FFDEF(string_len) +FFDEF(string_byte) +FFDEF(string_char) +FFDEF(string_sub) +FFDEF(string_rep) +FFDEF(string_reverse) +FFDEF(string_lower) +FFDEF(string_upper) +FFDEF(string_dump) +FFDEF(string_find) +FFDEF(string_match) +FFDEF(string_gmatch_aux) +FFDEF(string_gmatch) +FFDEF(string_gsub) +FFDEF(string_format) +FFDEF(table_foreachi) +FFDEF(table_foreach) +FFDEF(table_getn) +FFDEF(table_maxn) +FFDEF(table_insert) +FFDEF(table_remove) +FFDEF(table_concat) +FFDEF(table_sort) +FFDEF(io_method_close) +FFDEF(io_method_read) +FFDEF(io_method_write) +FFDEF(io_method_flush) +FFDEF(io_method_seek) +FFDEF(io_method_setvbuf) +FFDEF(io_method_lines) +FFDEF(io_method___gc) +FFDEF(io_method___tostring) +FFDEF(io_open) +FFDEF(io_popen) +FFDEF(io_tmpfile) +FFDEF(io_close) +FFDEF(io_read) +FFDEF(io_write) +FFDEF(io_flush) +FFDEF(io_input) +FFDEF(io_output) +FFDEF(io_lines) +FFDEF(io_type) +FFDEF(os_execute) +FFDEF(os_remove) +FFDEF(os_rename) +FFDEF(os_tmpname) +FFDEF(os_getenv) +FFDEF(os_exit) +FFDEF(os_clock) +FFDEF(os_date) +FFDEF(os_time) +FFDEF(os_difftime) +FFDEF(os_setlocale) +FFDEF(debug_getregistry) +FFDEF(debug_getmetatable) +FFDEF(debug_setmetatable) +FFDEF(debug_getfenv) +FFDEF(debug_setfenv) +FFDEF(debug_getinfo) +FFDEF(debug_getlocal) +FFDEF(debug_setlocal) +FFDEF(debug_getupvalue) +FFDEF(debug_setupvalue) +FFDEF(debug_upvalueid) +FFDEF(debug_upvaluejoin) +FFDEF(debug_sethook) +FFDEF(debug_gethook) +FFDEF(debug_debug) +FFDEF(debug_traceback) +FFDEF(jit_on) +FFDEF(jit_off) +FFDEF(jit_flush) +FFDEF(jit_status) +FFDEF(jit_attach) +FFDEF(jit_util_funcinfo) +FFDEF(jit_util_funcbc) +FFDEF(jit_util_funck) +FFDEF(jit_util_funcuvname) +FFDEF(jit_util_traceinfo) +FFDEF(jit_util_traceir) +FFDEF(jit_util_tracek) +FFDEF(jit_util_tracesnap) +FFDEF(jit_util_tracemc) +FFDEF(jit_util_traceexitstub) +FFDEF(jit_util_ircalladdr) +FFDEF(jit_opt_start) +FFDEF(ffi_meta___index) +FFDEF(ffi_meta___newindex) +FFDEF(ffi_meta___eq) +FFDEF(ffi_meta___len) +FFDEF(ffi_meta___lt) +FFDEF(ffi_meta___le) +FFDEF(ffi_meta___concat) +FFDEF(ffi_meta___call) +FFDEF(ffi_meta___add) +FFDEF(ffi_meta___sub) +FFDEF(ffi_meta___mul) +FFDEF(ffi_meta___div) +FFDEF(ffi_meta___mod) +FFDEF(ffi_meta___pow) +FFDEF(ffi_meta___unm) +FFDEF(ffi_meta___tostring) +FFDEF(ffi_meta___pairs) +FFDEF(ffi_meta___ipairs) +FFDEF(ffi_clib___index) +FFDEF(ffi_clib___newindex) +FFDEF(ffi_clib___gc) +FFDEF(ffi_callback_free) +FFDEF(ffi_callback_set) +FFDEF(ffi_cdef) +FFDEF(ffi_new) +FFDEF(ffi_cast) +FFDEF(ffi_typeof) +FFDEF(ffi_istype) +FFDEF(ffi_sizeof) +FFDEF(ffi_alignof) +FFDEF(ffi_offsetof) +FFDEF(ffi_errno) +FFDEF(ffi_string) +FFDEF(ffi_copy) +FFDEF(ffi_fill) +FFDEF(ffi_abi) +FFDEF(ffi_metatype) +FFDEF(ffi_gc) +FFDEF(ffi_load) + +#undef FFDEF + +#ifndef FF_NUM_ASMFUNC +#define FF_NUM_ASMFUNC 62 +#endif + diff --git a/Libs/LuaJIT-2.0.3/src/lj_folddef.h b/Libs/LuaJIT-2.0.3/src/lj_folddef.h new file mode 100644 index 0000000..c4ec4ef --- /dev/null +++ b/Libs/LuaJIT-2.0.3/src/lj_folddef.h @@ -0,0 +1,1068 @@ +/* This is a generated file. DO NOT EDIT! */ + +static const FoldFunc fold_func[] = { + fold_kfold_numarith, + fold_kfold_ldexp, + fold_kfold_fpmath, + fold_kfold_numpow, + fold_kfold_numcomp, + fold_kfold_intarith, + fold_kfold_intovarith, + fold_kfold_bnot, + fold_kfold_bswap, + fold_kfold_intcomp, + fold_kfold_intcomp0, + fold_kfold_int64arith, + fold_kfold_int64arith2, + fold_kfold_int64shift, + fold_kfold_bnot64, + fold_kfold_bswap64, + fold_kfold_int64comp, + fold_kfold_int64comp0, + fold_kfold_snew_kptr, + fold_kfold_snew_empty, + fold_kfold_strref, + fold_kfold_strref_snew, + fold_kfold_strcmp, + fold_kfold_add_kgc, + fold_kfold_add_kptr, + fold_kfold_add_kright, + fold_kfold_tobit, + fold_kfold_conv_kint_num, + fold_kfold_conv_kintu32_num, + fold_kfold_conv_kint_ext, + fold_kfold_conv_kint_i64, + fold_kfold_conv_kint64_num_i64, + fold_kfold_conv_kint64_num_u64, + fold_kfold_conv_kint64_int_i64, + fold_kfold_conv_knum_int_num, + fold_kfold_conv_knum_u32_num, + fold_kfold_conv_knum_i64_num, + fold_kfold_conv_knum_u64_num, + fold_kfold_tostr_knum, + fold_kfold_tostr_kint, + fold_kfold_strto, + lj_opt_cse, + fold_kfold_kref, + fold_shortcut_round, + fold_shortcut_left, + fold_shortcut_dropleft, + fold_shortcut_leftleft, + fold_simplify_numadd_negx, + fold_simplify_numadd_xneg, + fold_simplify_numsub_k, + fold_simplify_numsub_negk, + fold_simplify_numsub_xneg, + fold_simplify_nummuldiv_k, + fold_simplify_nummuldiv_negk, + fold_simplify_nummuldiv_negneg, + fold_simplify_numpow_xk, + fold_simplify_numpow_kx, + fold_shortcut_conv_num_int, + fold_simplify_conv_int_num, + fold_simplify_conv_i64_num, + fold_simplify_conv_int_i64, + fold_simplify_conv_flt_num, + fold_simplify_tobit_conv, + fold_simplify_floor_conv, + fold_simplify_conv_sext, + fold_simplify_conv_narrow, + fold_cse_conv, + fold_narrow_convert, + fold_simplify_intadd_k, + fold_simplify_intmul_k, + fold_simplify_intsub_k, + fold_simplify_intsub_kleft, + fold_simplify_intadd_k64, + fold_simplify_intsub_k64, + fold_simplify_intmul_k32, + fold_simplify_intmul_k64, + fold_simplify_intmod_k, + fold_simplify_intmod_kleft, + fold_simplify_intsub, + fold_simplify_intsubadd_leftcancel, + fold_simplify_intsubsub_leftcancel, + fold_simplify_intsubsub_rightcancel, + fold_simplify_intsubadd_rightcancel, + fold_simplify_intsubaddadd_cancel, + fold_simplify_band_k, + fold_simplify_bor_k, + fold_simplify_bxor_k, + fold_simplify_shift_ik, + fold_simplify_shift_andk, + fold_simplify_shift1_ki, + fold_simplify_shift2_ki, + fold_simplify_shiftk_andk, + fold_simplify_andk_shiftk, + fold_reassoc_intarith_k, + fold_reassoc_intarith_k64, + fold_reassoc_dup, + fold_reassoc_bxor, + fold_reassoc_shift, + fold_reassoc_minmax_k, + fold_reassoc_minmax_left, + fold_reassoc_minmax_right, + fold_abc_fwd, + fold_abc_k, + fold_abc_invar, + fold_comm_swap, + fold_comm_equal, + fold_comm_comp, + fold_comm_dup, + fold_comm_bxor, + fold_merge_eqne_snew_kgc, + lj_opt_fwd_aload, + fold_kfold_hload_kkptr, + lj_opt_fwd_hload, + lj_opt_fwd_uload, + lj_opt_fwd_tab_len, + fold_cse_uref, + lj_opt_fwd_hrefk, + fold_fwd_href_tnew, + fold_fwd_href_tdup, + fold_fload_tab_tnew_asize, + fold_fload_tab_tnew_hmask, + fold_fload_tab_tdup_asize, + fold_fload_tab_tdup_hmask, + fold_fload_tab_ah, + fold_fload_str_len_kgc, + fold_fload_str_len_snew, + fold_fload_cdata_typeid_kgc, + fold_fload_cdata_int64_kgc, + fold_fload_cdata_typeid_cnew, + fold_fload_cdata_ptr_int64_cnew, + lj_opt_cse, + lj_opt_fwd_fload, + fold_fwd_sload, + fold_xload_kptr, + lj_opt_fwd_xload, + fold_barrier_tab, + fold_barrier_tnew_tdup, + lj_opt_dse_ahstore, + lj_opt_dse_ustore, + lj_opt_dse_fstore, + lj_opt_dse_xstore, + lj_ir_emit +}; + +static const uint32_t fold_hash[916] = { +0xffffffff, +0xffffffff, +0x5b4c8016, +0x0d4e7016, +0xffffffff, +0x1000701c, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x29110c1a, +0xffffffff, +0xffffffff, +0x5b488016, +0x0d4a7016, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x7b87fc07, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x0d467016, +0xffffffff, +0x5a4c73ff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x5153fc29, +0xffffffff, +0xffffffff, +0xffffffff, +0x5d408016, +0xffffffff, +0x594873ff, +0x8187440f, +0xffffffff, +0xffffffff, +0xffffffff, +0x8287fc0f, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x6715ffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x2a11fc1a, +0xffffffff, +0x1daa5a70, +0xffffffff, +0xffffffff, +0x0a0bfc16, +0x5c408c16, +0x6911ffff, +0x8db7ffff, +0xffffffff, +0xffffffff, +0x1caa59d4, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x6a0dffff, +0x2b68d002, +0xffffffff, +0x3cab5695, +0xffffffff, +0x41aaa675, +0xffffffff, +0xffffffff, +0xffffffff, +0x27ae5800, +0xffffffff, +0x6a09ffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x7f865c0f, +0xffffffff, +0xffffffff, +0xffffffff, +0x6a05ffff, +0x42abffff, +0x5e44881c, +0x5d50a016, +0x066c5816, +0x00646c1b, +0x75753bff, +0x1951fc18, +0x6264c81b, +0x1850641c, +0xffffffff, +0x6a01ffff, +0x87a7ffff, +0x4953fc1c, +0x8da80000, +0x4f52a3ff, +0x00606c1b, +0xffffffff, +0xffffffff, +0xffffffff, +0x5d428416, +0x88a53800, +0xffffffff, +0xffffffff, +0xffffffff, +0x05645816, +0xffffffff, +0x005c6c1b, +0x20aa71d6, +0xffffffff, +0xffffffff, +0xffffffff, +0x1399fc16, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x157f33ff, +0xffffffff, +0xffffffff, +0x584dfc20, +0xffffffff, +0xffffffff, +0xffffffff, +0x8d9bffff, +0xffffffff, +0x055c5816, +0xffffffff, +0x00546c1b, +0xffffffff, +0xffffffff, +0x5849fc20, +0xffffffff, +0xffffffff, +0xffffffff, +0x8c97ffff, +0x5543fc1c, +0x05585816, +0xffffffff, +0x00506c1b, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x8a93ffff, +0x26ae6c00, +0x05545816, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x76753c17, +0x41aaa695, +0xffffffff, +0x898fffff, +0xffffffff, +0x05505816, +0xffffffff, +0xffffffff, +0xffffffff, +0x858867ff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x848bffff, +0xffffffff, +0x054c5816, +0x79873c06, +0x47525bff, +0xffffffff, +0x3f695401, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x8387ffff, +0xffffffff, +0x05485816, +0xffffffff, +0x5a4e5bff, +0xffffffff, +0xffffffff, +0x6264c816, +0x43aaa26e, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x05445816, +0xffffffff, +0x5a4a5bff, +0xffffffff, +0xffffffff, +0xffffffff, +0x3455fc1b, +0x0c5a701c, +0x6366cbff, +0x0e3c7000, +0xffffffff, +0x05405816, +0xffffffff, +0x59465bff, +0xffffffff, +0xffffffff, +0xffffffff, +0x41aaa276, +0x0c56701c, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x21aa7275, +0x0b52701c, +0x61489016, +0x6465fc33, +0x8d77ffff, +0xffffffff, +0x7b87fc05, +0xffffffff, +0xffffffff, +0x2a126bff, +0x385a6fff, +0xffffffff, +0x446dfc16, +0xffffffff, +0x7473ffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x7d873000, +0xffffffff, +0x5c409016, +0x686fffff, +0x8187440d, +0xffffffff, +0xffffffff, +0x3554b81b, +0x8287fc0d, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x686bffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x8d9ffc00, +0x737a5fff, +0x41aaaa75, +0xffffffff, +0xffffffff, +0x5e40801c, +0x0b42701c, +0x6b67ffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x2b68d000, +0xffffffff, +0xffffffff, +0x6d133017, +0xffffffff, +0xffffffff, +0x4c59fc16, +0xffffffff, +0xffffffff, +0x110bfc1c, +0x3aab566e, +0xffffffff, +0x5052a7ff, +0xffffffff, +0xffffffff, +0xffffffff, +0x6515fc28, +0x4a55fc16, +0x7f865c0d, +0x88a53c00, +0x41aaa296, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x4451fc16, +0xffffffff, +0x60448bff, +0x21aa7295, +0xffffffff, +0x3cab5676, +0x04106c1b, +0xffffffff, +0x78873807, +0xffffffff, +0xffffffff, +0x574dfc16, +0xffffffff, +0x4e53ffff, +0xffffffff, +0x09145816, +0xffffffff, +0x040c6c1b, +0x8287fc00, +0x5e50a01c, +0x6467fc32, +0xffffffff, +0x5749fc16, +0xffffffff, +0xffffffff, +0xffffffff, +0x2a105816, +0x2e3e7c00, +0x04086c1b, +0x7083fc00, +0xffffffff, +0xffffffff, +0xffffffff, +0x5645fc16, +0xffffffff, +0x22aa6e6e, +0x5e42841c, +0x614e9c16, +0x090c5816, +0x04046c1b, +0x1eaa5ab3, +0xffffffff, +0xffffffff, +0xffffffff, +0x5441fc16, +0x41aaaa95, +0xffffffff, +0x5352a028, +0x09085816, +0x17505c16, +0x04006c1b, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x6b43ffff, +0xffffffff, +0x09045816, +0xffffffff, +0x43aaa2ae, +0xffffffff, +0xffffffff, +0xffffffff, +0x083e5800, +0x7c865c00, +0xffffffff, +0x76753c15, +0x3051fc2e, +0x09005816, +0xffffffff, +0xffffffff, +0xffffffff, +0x3aab568e, +0xffffffff, +0x43aaa66e, +0xffffffff, +0x1daa5a71, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x2a12701c, +0x5f66cfff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x3cab5696, +0xffffffff, +0x100e701c, +0x41aaa676, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x2a125c17, +0x3654b82e, +0x100a701c, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x1006701c, +0xffffffff, +0x1951fc19, +0xffffffff, +0xffffffff, +0xffffffff, +0x23aa6e8e, +0xffffffff, +0x5b4e8016, +0xffffffff, +0x1eaa5ad3, +0x1002701c, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x29130c1a, +0xffffffff, +0xffffffff, +0x0d4c7016, +0xffffffff, +0x475273ff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x5b468016, +0x0d487016, +0x5a4e73ff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x5d54a816, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x5a4a73ff, +0x6615fc16, +0x3bab56ae, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x594673ff, +0xffffffff, +0x61468c16, +0x8d17ffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x2a13fc1a, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x6913ffff, +0x40abfeb3, +0x8db9ffff, +0x41aaa696, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x6a0fffff, +0x8db5ffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x7a873c07, +0xffffffff, +0xffffffff, +0xffffffff, +0x6a0bffff, +0x3f695402, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x24aa6eae, +0xffffffff, +0xffffffff, +0x6a07ffff, +0xffffffff, +0xffffffff, +0x066e5816, +0xffffffff, +0x00666c1b, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x6a03ffff, +0xffffffff, +0x4b55fc1c, +0x066a5816, +0xffffffff, +0x00626c1b, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x4851fc1c, +0x05665816, +0x18506016, +0x005e6c1b, +0x12986416, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x8da1ffff, +0xffffffff, +0x3bab56ce, +0xffffffff, +0x43aaa6ae, +0xffffffff, +0xffffffff, +0x584ffc20, +0x7b87fc06, +0xffffffff, +0x5f4287ff, +0x8d9dffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x00566c1b, +0xffffffff, +0xffffffff, +0x584bfc20, +0x5253fc28, +0xffffffff, +0xffffffff, +0xffffffff, +0x5645fc1c, +0xffffffff, +0x40abfed3, +0x00526c1b, +0x8187440e, +0xffffffff, +0x5847fc20, +0x8287fc0e, +0xffffffff, +0xffffffff, +0x8b95ffff, +0x2e3c7800, +0x5441fc1c, +0xffffffff, +0xffffffff, +0xffffffff, +0x17505c1c, +0xffffffff, +0xffffffff, +0x41aaaa76, +0xffffffff, +0x614c9816, +0x8991ffff, +0x1daa5a6f, +0x05525816, +0x4d585bff, +0xffffffff, +0x8087400c, +0xffffffff, +0xffffffff, +0xffffffff, +0x1baa59d3, +0x828dffff, +0x25aa6ece, +0x054e5816, +0x76753c1b, +0xffffffff, +0xffffffff, +0xffffffff, +0x2b68d001, +0xffffffff, +0xffffffff, +0xffffffff, +0x8689ffff, +0xffffffff, +0x054a5816, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x43aca01b, +0x05465816, +0x7f865c0e, +0x5a4c5bff, +0x39ab55d3, +0x01626c16, +0x02686fff, +0x3457fc1b, +0xffffffff, +0xffffffff, +0x0f3e7000, +0x3dab55ae, +0x05425816, +0x1951fc17, +0x59485bff, +0xffffffff, +0xffffffff, +0xffffffff, +0x3153fc1b, +0x0c58701c, +0x5f64cbff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x035a6c16, +0xffffffff, +0xffffffff, +0xffffffff, +0x0b54701c, +0xffffffff, +0x8779ffff, +0x1faa71d5, +0xffffffff, +0xffffffff, +0x2d5eb81b, +0x72b5fc08, +0xffffffff, +0xffffffff, +0xffffffff, +0x0b50701c, +0x456ffc16, +0x7b75ffff, +0xffffffff, +0xffffffff, +0x147e5c16, +0xffffffff, +0xffffffff, +0x2a106bff, +0xffffffff, +0x1eaa5ab4, +0x446bfc16, +0xffffffff, +0xffffffff, +0xffffffff, +0x41aaaa96, +0xffffffff, +0x3556b81b, +0x87a5fc00, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x4e6dffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x3252b81b, +0xffffffff, +0x5e54a81c, +0xffffffff, +0xffffffff, +0x0b44701c, +0x28b05c00, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x73785fff, +0xffffffff, +0xffffffff, +0xffffffff, +0x0b40701c, +0xffffffff, +0x6b65ffff, +0xffffffff, +0xffffffff, +0x1daa5a72, +0xffffffff, +0xffffffff, +0xffffffff, +0x6266cc1b, +0xffffffff, +0x375bfc16, +0xffffffff, +0xffffffff, +0xffffffff, +0x3f695400, +0xffffffff, +0xffffffff, +0xffffffff, +0x6d113017, +0x3ead541b, +0xffffffff, +0x5d448816, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x18506416, +0xffffffff, +0xffffffff, +0x16b37400, +0xffffffff, +0x4653fc16, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x04126c1b, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x574ffc16, +0xffffffff, +0x6855ffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x040e6c1b, +0x41aaa275, +0xffffffff, +0xffffffff, +0xffffffff, +0x574bfc16, +0x6f826400, +0x6851ffff, +0x1eaa5ad4, +0x2a125816, +0xffffffff, +0x040a6c1b, +0x7185fc00, +0xffffffff, +0xffffffff, +0xffffffff, +0x5747fc16, +0x7b87fc04, +0xffffffff, +0xffffffff, +0x090e5816, +0xffffffff, +0x04066c1b, +0x6e81fc00, +0x1aac6c1b, +0x1850601c, +0x2e5cbbff, +0x5543fc16, +0xffffffff, +0xffffffff, +0xffffffff, +0x090a5816, +0xffffffff, +0x04026c1b, +0xffffffff, +0xffffffff, +0x8087440c, +0xffffffff, +0xffffffff, +0xffffffff, +0x6c45ffff, +0x8287fc0c, +0x09065816, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x6b41ffff, +0x3353fc2e, +0x09025816, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x2f50bbff, +0x073c5800, +0x6266cc16, +0x5f4083ff, +0xffffffff, +0xffffffff, +0x43aca41b, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x2a10701c, +0x6364cfff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x7e865c0c, +0xffffffff, +0xffffffff, +0x3656b82e, +0x41aaa295, +0x100c701c, +0x614a9416, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x2c5ebc1b, +0xffffffff, +0x2a105c17, +0xffffffff, +0x1008701c, +0x3cab5675, +0xffffffff, +0xffffffff, +0x77873806, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0x1004701c, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff, +0xffffffff +}; + +#define fold_hashkey(k) (lj_rol(lj_rol((k),17)-(k),16)%915) + diff --git a/Libs/LuaJIT-2.0.3/src/lj_libdef.h b/Libs/LuaJIT-2.0.3/src/lj_libdef.h new file mode 100644 index 0000000..5693a58 --- /dev/null +++ b/Libs/LuaJIT-2.0.3/src/lj_libdef.h @@ -0,0 +1,393 @@ +/* This is a generated file. DO NOT EDIT! */ + +#ifdef LJLIB_MODULE_base +#undef LJLIB_MODULE_base +static const lua_CFunction lj_lib_cf_base[] = { + lj_ffh_assert, + lj_ffh_next, + lj_ffh_pairs, + lj_ffh_ipairs_aux, + lj_ffh_ipairs, + lj_ffh_setmetatable, + lj_cf_getfenv, + lj_cf_setfenv, + lj_ffh_rawget, + lj_cf_rawset, + lj_cf_rawequal, + lj_cf_unpack, + lj_cf_select, + lj_ffh_tonumber, + lj_ffh_tostring, + lj_cf_error, + lj_ffh_pcall, + lj_cf_loadfile, + lj_cf_load, + lj_cf_loadstring, + lj_cf_dofile, + lj_cf_gcinfo, + lj_cf_collectgarbage, + lj_cf_newproxy, + lj_cf_print +}; +static const uint8_t lj_lib_init_base[] = { +2,0,28,70,97,115,115,101,114,116,195,110,105,108,199,98,111,111,108,101,97, +110,252,1,200,117,115,101,114,100,97,116,97,198,115,116,114,105,110,103,197, +117,112,118,97,108,198,116,104,114,101,97,100,197,112,114,111,116,111,200,102, +117,110,99,116,105,111,110,197,116,114,97,99,101,197,99,100,97,116,97,197,116, +97,98,108,101,252,9,198,110,117,109,98,101,114,132,116,121,112,101,68,110,101, +120,116,253,69,112,97,105,114,115,64,253,70,105,112,97,105,114,115,140,103, +101,116,109,101,116,97,116,97,98,108,101,76,115,101,116,109,101,116,97,116, +97,98,108,101,7,103,101,116,102,101,110,118,7,115,101,116,102,101,110,118,70, +114,97,119,103,101,116,6,114,97,119,115,101,116,8,114,97,119,101,113,117,97, +108,6,117,110,112,97,99,107,6,115,101,108,101,99,116,72,116,111,110,117,109, +98,101,114,195,110,105,108,197,102,97,108,115,101,196,116,114,117,101,72,116, +111,115,116,114,105,110,103,5,101,114,114,111,114,69,112,99,97,108,108,134, +120,112,99,97,108,108,8,108,111,97,100,102,105,108,101,4,108,111,97,100,10, +108,111,97,100,115,116,114,105,110,103,6,100,111,102,105,108,101,6,103,99,105, +110,102,111,14,99,111,108,108,101,99,116,103,97,114,98,97,103,101,252,2,8,110, +101,119,112,114,111,120,121,200,116,111,115,116,114,105,110,103,5,112,114,105, +110,116,252,3,200,95,86,69,82,83,73,79,78,250,255 +}; +#endif + +#ifdef LJLIB_MODULE_coroutine +#undef LJLIB_MODULE_coroutine +static const lua_CFunction lj_lib_cf_coroutine[] = { + lj_cf_coroutine_status, + lj_cf_coroutine_running, + lj_cf_coroutine_create, + lj_ffh_coroutine_yield, + lj_ffh_coroutine_resume, + lj_cf_coroutine_wrap +}; +static const uint8_t lj_lib_init_coroutine[] = { +30,13,6,6,115,116,97,116,117,115,7,114,117,110,110,105,110,103,6,99,114,101, +97,116,101,69,121,105,101,108,100,70,114,101,115,117,109,101,254,4,119,114, +97,112,255 +}; +#endif + +#ifdef LJLIB_MODULE_math +#undef LJLIB_MODULE_math +static const lua_CFunction lj_lib_cf_math[] = { + lj_ffh_math_abs, + lj_ffh_math_sqrt, + lj_ffh_math_log, + lj_ffh_math_atan2, + lj_ffh_math_ldexp, + lj_ffh_math_min, + lj_cf_math_random, + lj_cf_math_randomseed +}; +static const uint8_t lj_lib_init_math[] = { +37,16,30,67,97,98,115,133,102,108,111,111,114,132,99,101,105,108,68,115,113, +114,116,133,108,111,103,49,48,131,101,120,112,131,115,105,110,131,99,111,115, +131,116,97,110,132,97,115,105,110,132,97,99,111,115,132,97,116,97,110,132,115, +105,110,104,132,99,111,115,104,132,116,97,110,104,133,102,114,101,120,112,132, +109,111,100,102,251,248,193,99,26,220,165,76,64,131,100,101,103,251,57,157, +82,162,70,223,145,63,131,114,97,100,67,108,111,103,69,97,116,97,110,50,131, +112,111,119,132,102,109,111,100,69,108,100,101,120,112,67,109,105,110,131,109, +97,120,251,24,45,68,84,251,33,9,64,194,112,105,250,251,0,0,0,0,0,0,240,127, +196,104,117,103,101,250,252,2,6,114,97,110,100,111,109,252,2,10,114,97,110, +100,111,109,115,101,101,100,255 +}; +#endif + +#ifdef LJLIB_MODULE_bit +#undef LJLIB_MODULE_bit +static const lua_CFunction lj_lib_cf_bit[] = { + lj_ffh_bit_tobit, + lj_ffh_bit_lshift, + lj_ffh_bit_band, + lj_cf_bit_tohex +}; +static const uint8_t lj_lib_init_bit[] = { +65,42,12,69,116,111,98,105,116,132,98,110,111,116,133,98,115,119,97,112,70, +108,115,104,105,102,116,134,114,115,104,105,102,116,135,97,114,115,104,105, +102,116,131,114,111,108,131,114,111,114,68,98,97,110,100,131,98,111,114,132, +98,120,111,114,5,116,111,104,101,120,255 +}; +#endif + +#ifdef LJLIB_MODULE_string +#undef LJLIB_MODULE_string +static const lua_CFunction lj_lib_cf_string[] = { + lj_ffh_string_len, + lj_ffh_string_byte, + lj_ffh_string_char, + lj_ffh_string_sub, + lj_ffh_string_rep, + lj_ffh_string_reverse, + lj_cf_string_dump, + lj_cf_string_find, + lj_cf_string_match, + lj_cf_string_gmatch, + lj_cf_string_gsub, + lj_cf_string_format +}; +static const uint8_t lj_lib_init_string[] = { +77,53,14,67,108,101,110,68,98,121,116,101,68,99,104,97,114,67,115,117,98,67, +114,101,112,71,114,101,118,101,114,115,101,133,108,111,119,101,114,133,117, +112,112,101,114,4,100,117,109,112,4,102,105,110,100,5,109,97,116,99,104,254, +6,103,109,97,116,99,104,4,103,115,117,98,6,102,111,114,109,97,116,255 +}; +#endif + +#ifdef LJLIB_MODULE_table +#undef LJLIB_MODULE_table +static const lua_CFunction lj_lib_cf_table[] = { + lj_cf_table_foreachi, + lj_cf_table_foreach, + lj_ffh_table_getn, + lj_cf_table_maxn, + lj_cf_table_insert, + lj_cf_table_remove, + lj_cf_table_concat, + lj_cf_table_sort +}; +static const uint8_t lj_lib_init_table[] = { +92,61,8,8,102,111,114,101,97,99,104,105,7,102,111,114,101,97,99,104,68,103, +101,116,110,4,109,97,120,110,6,105,110,115,101,114,116,6,114,101,109,111,118, +101,6,99,111,110,99,97,116,4,115,111,114,116,255 +}; +#endif + +#ifdef LJLIB_MODULE_io_method +#undef LJLIB_MODULE_io_method +static const lua_CFunction lj_lib_cf_io_method[] = { + lj_cf_io_method_close, + lj_cf_io_method_read, + lj_cf_io_method_write, + lj_cf_io_method_flush, + lj_cf_io_method_seek, + lj_cf_io_method_setvbuf, + lj_cf_io_method_lines, + lj_cf_io_method___gc, + lj_cf_io_method___tostring +}; +static const uint8_t lj_lib_init_io_method[] = { +100,62,10,5,99,108,111,115,101,4,114,101,97,100,5,119,114,105,116,101,5,102, +108,117,115,104,4,115,101,101,107,7,115,101,116,118,98,117,102,5,108,105,110, +101,115,4,95,95,103,99,10,95,95,116,111,115,116,114,105,110,103,252,1,199,95, +95,105,110,100,101,120,250,255 +}; +#endif + +#ifdef LJLIB_MODULE_io +#undef LJLIB_MODULE_io +static const lua_CFunction lj_lib_cf_io[] = { + lj_cf_io_open, + lj_cf_io_popen, + lj_cf_io_tmpfile, + lj_cf_io_close, + lj_cf_io_read, + lj_cf_io_write, + lj_cf_io_flush, + lj_cf_io_input, + lj_cf_io_output, + lj_cf_io_lines, + lj_cf_io_type +}; +static const uint8_t lj_lib_init_io[] = { +109,62,12,252,2,192,250,4,111,112,101,110,5,112,111,112,101,110,7,116,109,112, +102,105,108,101,5,99,108,111,115,101,4,114,101,97,100,5,119,114,105,116,101, +5,102,108,117,115,104,5,105,110,112,117,116,6,111,117,116,112,117,116,5,108, +105,110,101,115,4,116,121,112,101,255 +}; +#endif + +#ifdef LJLIB_MODULE_os +#undef LJLIB_MODULE_os +static const lua_CFunction lj_lib_cf_os[] = { + lj_cf_os_execute, + lj_cf_os_remove, + lj_cf_os_rename, + lj_cf_os_tmpname, + lj_cf_os_getenv, + lj_cf_os_exit, + lj_cf_os_clock, + lj_cf_os_date, + lj_cf_os_time, + lj_cf_os_difftime, + lj_cf_os_setlocale +}; +static const uint8_t lj_lib_init_os[] = { +120,62,11,7,101,120,101,99,117,116,101,6,114,101,109,111,118,101,6,114,101, +110,97,109,101,7,116,109,112,110,97,109,101,6,103,101,116,101,110,118,4,101, +120,105,116,5,99,108,111,99,107,4,100,97,116,101,4,116,105,109,101,8,100,105, +102,102,116,105,109,101,9,115,101,116,108,111,99,97,108,101,255 +}; +#endif + +#ifdef LJLIB_MODULE_debug +#undef LJLIB_MODULE_debug +static const lua_CFunction lj_lib_cf_debug[] = { + lj_cf_debug_getregistry, + lj_cf_debug_getmetatable, + lj_cf_debug_setmetatable, + lj_cf_debug_getfenv, + lj_cf_debug_setfenv, + lj_cf_debug_getinfo, + lj_cf_debug_getlocal, + lj_cf_debug_setlocal, + lj_cf_debug_getupvalue, + lj_cf_debug_setupvalue, + lj_cf_debug_upvalueid, + lj_cf_debug_upvaluejoin, + lj_cf_debug_sethook, + lj_cf_debug_gethook, + lj_cf_debug_debug, + lj_cf_debug_traceback +}; +static const uint8_t lj_lib_init_debug[] = { +131,62,16,11,103,101,116,114,101,103,105,115,116,114,121,12,103,101,116,109, +101,116,97,116,97,98,108,101,12,115,101,116,109,101,116,97,116,97,98,108,101, +7,103,101,116,102,101,110,118,7,115,101,116,102,101,110,118,7,103,101,116,105, +110,102,111,8,103,101,116,108,111,99,97,108,8,115,101,116,108,111,99,97,108, +10,103,101,116,117,112,118,97,108,117,101,10,115,101,116,117,112,118,97,108, +117,101,9,117,112,118,97,108,117,101,105,100,11,117,112,118,97,108,117,101, +106,111,105,110,7,115,101,116,104,111,111,107,7,103,101,116,104,111,111,107, +5,100,101,98,117,103,9,116,114,97,99,101,98,97,99,107,255 +}; +#endif + +#ifdef LJLIB_MODULE_jit +#undef LJLIB_MODULE_jit +static const lua_CFunction lj_lib_cf_jit[] = { + lj_cf_jit_on, + lj_cf_jit_off, + lj_cf_jit_flush, + lj_cf_jit_status, + lj_cf_jit_attach +}; +static const uint8_t lj_lib_init_jit[] = { +147,62,9,2,111,110,3,111,102,102,5,102,108,117,115,104,6,115,116,97,116,117, +115,6,97,116,116,97,99,104,252,5,194,111,115,250,252,4,196,97,114,99,104,250, +252,3,203,118,101,114,115,105,111,110,95,110,117,109,250,252,2,199,118,101, +114,115,105,111,110,250,255 +}; +#endif + +#ifdef LJLIB_MODULE_jit_util +#undef LJLIB_MODULE_jit_util +static const lua_CFunction lj_lib_cf_jit_util[] = { + lj_cf_jit_util_funcinfo, + lj_cf_jit_util_funcbc, + lj_cf_jit_util_funck, + lj_cf_jit_util_funcuvname, + lj_cf_jit_util_traceinfo, + lj_cf_jit_util_traceir, + lj_cf_jit_util_tracek, + lj_cf_jit_util_tracesnap, + lj_cf_jit_util_tracemc, + lj_cf_jit_util_traceexitstub, + lj_cf_jit_util_ircalladdr +}; +static const uint8_t lj_lib_init_jit_util[] = { +152,62,11,8,102,117,110,99,105,110,102,111,6,102,117,110,99,98,99,5,102,117, +110,99,107,10,102,117,110,99,117,118,110,97,109,101,9,116,114,97,99,101,105, +110,102,111,7,116,114,97,99,101,105,114,6,116,114,97,99,101,107,9,116,114,97, +99,101,115,110,97,112,7,116,114,97,99,101,109,99,13,116,114,97,99,101,101,120, +105,116,115,116,117,98,10,105,114,99,97,108,108,97,100,100,114,255 +}; +#endif + +#ifdef LJLIB_MODULE_jit_opt +#undef LJLIB_MODULE_jit_opt +static const lua_CFunction lj_lib_cf_jit_opt[] = { + lj_cf_jit_opt_start +}; +static const uint8_t lj_lib_init_jit_opt[] = { +163,62,1,5,115,116,97,114,116,255 +}; +#endif + +#ifdef LJLIB_MODULE_ffi_meta +#undef LJLIB_MODULE_ffi_meta +static const lua_CFunction lj_lib_cf_ffi_meta[] = { + lj_cf_ffi_meta___index, + lj_cf_ffi_meta___newindex, + lj_cf_ffi_meta___eq, + lj_cf_ffi_meta___len, + lj_cf_ffi_meta___lt, + lj_cf_ffi_meta___le, + lj_cf_ffi_meta___concat, + lj_cf_ffi_meta___call, + lj_cf_ffi_meta___add, + lj_cf_ffi_meta___sub, + lj_cf_ffi_meta___mul, + lj_cf_ffi_meta___div, + lj_cf_ffi_meta___mod, + lj_cf_ffi_meta___pow, + lj_cf_ffi_meta___unm, + lj_cf_ffi_meta___tostring, + lj_cf_ffi_meta___pairs, + lj_cf_ffi_meta___ipairs +}; +static const uint8_t lj_lib_init_ffi_meta[] = { +164,62,19,7,95,95,105,110,100,101,120,10,95,95,110,101,119,105,110,100,101, +120,4,95,95,101,113,5,95,95,108,101,110,4,95,95,108,116,4,95,95,108,101,8,95, +95,99,111,110,99,97,116,6,95,95,99,97,108,108,5,95,95,97,100,100,5,95,95,115, +117,98,5,95,95,109,117,108,5,95,95,100,105,118,5,95,95,109,111,100,5,95,95, +112,111,119,5,95,95,117,110,109,10,95,95,116,111,115,116,114,105,110,103,7, +95,95,112,97,105,114,115,8,95,95,105,112,97,105,114,115,195,102,102,105,203, +95,95,109,101,116,97,116,97,98,108,101,250,255 +}; +#endif + +#ifdef LJLIB_MODULE_ffi_clib +#undef LJLIB_MODULE_ffi_clib +static const lua_CFunction lj_lib_cf_ffi_clib[] = { + lj_cf_ffi_clib___index, + lj_cf_ffi_clib___newindex, + lj_cf_ffi_clib___gc +}; +static const uint8_t lj_lib_init_ffi_clib[] = { +182,62,3,7,95,95,105,110,100,101,120,10,95,95,110,101,119,105,110,100,101,120, +4,95,95,103,99,255 +}; +#endif + +#ifdef LJLIB_MODULE_ffi_callback +#undef LJLIB_MODULE_ffi_callback +static const lua_CFunction lj_lib_cf_ffi_callback[] = { + lj_cf_ffi_callback_free, + lj_cf_ffi_callback_set +}; +static const uint8_t lj_lib_init_ffi_callback[] = { +185,62,3,4,102,114,101,101,3,115,101,116,252,1,199,95,95,105,110,100,101,120, +250,255 +}; +#endif + +#ifdef LJLIB_MODULE_ffi +#undef LJLIB_MODULE_ffi +static const lua_CFunction lj_lib_cf_ffi[] = { + lj_cf_ffi_cdef, + lj_cf_ffi_new, + lj_cf_ffi_cast, + lj_cf_ffi_typeof, + lj_cf_ffi_istype, + lj_cf_ffi_sizeof, + lj_cf_ffi_alignof, + lj_cf_ffi_offsetof, + lj_cf_ffi_errno, + lj_cf_ffi_string, + lj_cf_ffi_copy, + lj_cf_ffi_fill, + lj_cf_ffi_abi, + lj_cf_ffi_metatype, + lj_cf_ffi_gc, + lj_cf_ffi_load +}; +static const uint8_t lj_lib_init_ffi[] = { +187,62,22,4,99,100,101,102,3,110,101,119,4,99,97,115,116,6,116,121,112,101, +111,102,6,105,115,116,121,112,101,6,115,105,122,101,111,102,7,97,108,105,103, +110,111,102,8,111,102,102,115,101,116,111,102,5,101,114,114,110,111,6,115,116, +114,105,110,103,4,99,111,112,121,4,102,105,108,108,3,97,98,105,252,8,192,250, +8,109,101,116,97,116,121,112,101,252,7,192,250,2,103,99,252,5,192,250,4,108, +111,97,100,252,4,193,67,250,252,3,194,111,115,250,252,2,196,97,114,99,104,250, +255 +}; +#endif + diff --git a/Libs/LuaJIT-2.0.3/src/lj_recdef.h b/Libs/LuaJIT-2.0.3/src/lj_recdef.h new file mode 100644 index 0000000..2c3c9be --- /dev/null +++ b/Libs/LuaJIT-2.0.3/src/lj_recdef.h @@ -0,0 +1,263 @@ +/* This is a generated file. DO NOT EDIT! */ + +static const uint16_t recff_idmap[] = { +0, +0x0100, +0x0200, +0x0300, +0, +0, +0x0400, +0x0500, +0x0600, +0x0700, +0, +0, +0x0800, +0x0900, +0x0a00, +0, +0x0b00, +0x0c00, +0x0d00, +0, +0x0e00, +0x0f00, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0x1000, +0x1100+(IRFPM_FLOOR), +0x1100+(IRFPM_CEIL), +0x1200+(IRFPM_SQRT), +0x1200+(IRFPM_LOG10), +0x1200+(IRFPM_EXP), +0x1200+(IRFPM_SIN), +0x1200+(IRFPM_COS), +0x1200+(IRFPM_TAN), +0x1300+(FF_math_asin), +0x1300+(FF_math_acos), +0x1300+(FF_math_atan), +0x1400+(IRCALL_sinh), +0x1400+(IRCALL_cosh), +0x1400+(IRCALL_tanh), +0, +0x1500, +0x1600, +0x1600, +0x1700, +0x1800, +0x1900, +0, +0x1a00, +0x1b00+(IR_MIN), +0x1b00+(IR_MAX), +0x1c00, +0, +0x1d00+(IR_TOBIT), +0x1d00+(IR_BNOT), +0x1d00+(IR_BSWAP), +0x1e00+(IR_BSHL), +0x1e00+(IR_BSHR), +0x1e00+(IR_BSAR), +0x1e00+(IR_BROL), +0x1e00+(IR_BROR), +0x1f00+(IR_BAND), +0x1f00+(IR_BOR), +0x1f00+(IR_BXOR), +0, +0x2000, +0x2100+(0), +0, +0x2100+(1), +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0x2200, +0, +0x2300, +0x2400, +0, +0, +0, +0, +0x2500+(0), +0x2600+(0), +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0x2500+(GCROOT_IO_OUTPUT), +0x2600+(GCROOT_IO_OUTPUT), +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0, +0x2700+(0), +0x2700+(1), +0x2800+(MM_eq), +0x2800+(MM_len), +0x2800+(MM_lt), +0x2800+(MM_le), +0x2800+(MM_concat), +0x2900, +0x2800+(MM_add), +0x2800+(MM_sub), +0x2800+(MM_mul), +0x2800+(MM_div), +0x2800+(MM_mod), +0x2800+(MM_pow), +0x2800+(MM_unm), +0, +0, +0, +0x2a00+(1), +0x2a00+(0), +0, +0, +0, +0, +0x2b00, +0x2b00, +0x2c00, +0x2d00, +0x2e00+(FF_ffi_sizeof), +0x2e00+(FF_ffi_alignof), +0x2e00+(FF_ffi_offsetof), +0x2f00, +0x3000, +0x3100, +0x3200, +0x3300, +0, +0x3400 +}; + +static const RecordFunc recff_func[] = { +recff_nyi, +recff_c, +recff_assert, +recff_type, +recff_ipairs_aux, +recff_ipairs, +recff_getmetatable, +recff_setmetatable, +recff_rawget, +recff_rawset, +recff_rawequal, +recff_select, +recff_tonumber, +recff_tostring, +recff_pcall, +recff_xpcall, +recff_math_abs, +recff_math_round, +recff_math_unary, +recff_math_atrig, +recff_math_htrig, +recff_math_modf, +recff_math_degrad, +recff_math_log, +recff_math_atan2, +recff_math_pow, +recff_math_ldexp, +recff_math_minmax, +recff_math_random, +recff_bit_unary, +recff_bit_shift, +recff_bit_nary, +recff_string_len, +recff_string_range, +recff_table_getn, +recff_table_insert, +recff_table_remove, +recff_io_write, +recff_io_flush, +recff_cdata_index, +recff_cdata_arith, +recff_cdata_call, +recff_clib_index, +recff_ffi_new, +recff_ffi_typeof, +recff_ffi_istype, +recff_ffi_xof, +recff_ffi_errno, +recff_ffi_string, +recff_ffi_copy, +recff_ffi_fill, +recff_ffi_abi, +recff_ffi_gc +}; + diff --git a/Libs/SDL/freetype-2.5.5/objs/README b/Libs/SDL/freetype-2.5.5/objs/README deleted file mode 100644 index befb63e..0000000 --- a/Libs/SDL/freetype-2.5.5/objs/README +++ /dev/null @@ -1,2 +0,0 @@ -This directory contains all the object files created when building the -library. diff --git a/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/freetype.log b/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/freetype.log deleted file mode 100644 index 6fbf86a..0000000 --- a/Libs/SDL/freetype-2.5.5/objs/vc2010/Win32/Debug/freetype.log +++ /dev/null @@ -1,8 +0,0 @@ -п»їBuild started 13.04.2020 20:55:50. - 1>Project "C:\Repos\UniMod\Libs\SDL\freetype-2.5.5\builds\windows\vc2010\freetype.vcxproj" on node 2 (Clean target(s)). - Project file contains ToolsVersion="15.0". This toolset may be unknown or missing, in which case you may be able to resolve this by installing the appropriate version of MSBuild, or the build may have been forced to a particular ToolsVersion for policy reasons. Treating the project as if it had ToolsVersion="4.0". For more information, please see http://go.microsoft.com/fwlink/?LinkId=291333. - 1>Done Building Project "C:\Repos\UniMod\Libs\SDL\freetype-2.5.5\builds\windows\vc2010\freetype.vcxproj" (Clean target(s)). - -Build succeeded. - -Time Elapsed 00:00:00.00 diff --git a/UniModNew.v11.suo b/UniModNew.v11.suo deleted file mode 100644 index 4963d59584fefdf7a4c380d4fd3f499a1426168c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18944 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 U(%av%vL8O*U2JO})46H+A6kUG!T= 3) + { + incBuffer[0x42] = 0; + conPrintI("[UniMod] Bugged player class detected"); + } + + // Check if desired player object is invalid + if (incBuffer[0x43] > 0) + { + incBuffer[0x43] = 0; + conPrintI("[UniMod] Bugged player object detected"); + } + + return playerNew_4DD320(playerId, incBuffer); +} +void bugsInit() +{ ASSIGN(wndSummonUsed,0x00716E88); ASSIGN(creatureSummonCommandAll,0x005B4080); @@ -369,7 +397,6 @@ void bugsInit() ASSIGN(wndSummonCreateList,0x004C2560); ASSIGN(cliSummondWndLoad,0x004C2E50); - InjectJumpTo(0x004E1C8A,&asmDeathBallBugGs); InjectJumpTo(0x004E1BD6,&asmDeathBallBugSh); @@ -383,4 +410,11 @@ void bugsInit() // InjectJumpTo(0x0052C7CD,&asmFixCastFireball); topicOverrideInit(); + + bool checkPlayerJoinData=true; // TODO: convert all similar hardcoded-switches into #defines in a separate file + if (checkPlayerJoinData) + { + InjectOffs(0x0051CEB8 + 1, &playerDataJoinHook); + } + ASSIGN(playerNew_4DD320, 0x4DD320); } \ No newline at end of file diff --git a/console.cpp b/console.cpp index 8fd6480..afe3335 100644 --- a/console.cpp +++ b/console.cpp @@ -44,8 +44,6 @@ namespace lua_settop(L,Top); } - - int __declspec(naked) onPrintConsoleTrap() { __asm diff --git a/libVer.cpp b/libVer.cpp index 019690c..bb7d4b8 100644 --- a/libVer.cpp +++ b/libVer.cpp @@ -7,9 +7,9 @@ #include #include -extern void injectCon(); -extern "C" void __cdecl onNetPacket(BYTE *&BufStart,BYTE *E); -extern "C" void __cdecl onNetPacket2(BYTE *&BufStart,BYTE *E, BYTE *MyPlayer, BYTE *MyUc); +extern void initStepTwo(); +extern "C" void __cdecl onNetPacketClient(BYTE *&BufStart,BYTE *E); +extern "C" void __cdecl onNetPacketServer(BYTE *&BufStart,BYTE *E, BYTE *MyPlayer, BYTE *MyUc); extern "C" int __cdecl playerOnTrySpell(bigUnitStruct *Unit,byte *Uc,spellPacket *Pckt); extern "C" void conSendToServer(const char *Cmd); @@ -38,7 +38,7 @@ namespace push ebx lea eax, [esp+8-4] push eax - call onNetPacket + call onNetPacketClient add esp, 8 pop ebp cmp ebp, ebx @@ -64,7 +64,7 @@ namespace lea eax, [esp+0Ch-4] push ecx push eax - call onNetPacket2 + call onNetPacketServer add esp, 10h pop esi cmp esi, [esp+2Ch] @@ -147,7 +147,7 @@ namespace lua_pushcclosure(L, delayedConL, 0); lua_setfield(L, LUA_REGISTRYINDEX, "delayedCon"); - injectCon(); + initStepTwo(); __asm { diff --git a/net.cpp b/net.cpp index 9bc3382..b26e9a5 100644 --- a/net.cpp +++ b/net.cpp @@ -314,24 +314,6 @@ namespace { netSendAll(&RP,sizeof(RP)); return 0; } - int netFake(lua_State *L) - /// высылает сообщение о смерти, но от этого помирает нокс - { - if (lua_type(L,1)!=LUA_TLIGHTUSERDATA) - { - lua_pushstring(L,"wrong args!"); - lua_error_(L); - } - - struct { - BYTE Pckt; - USHORT Code; - } B={0xE8,netGetUnitCodeServ(lua_touserdata(L,-1))}; - - netSendAll(&B,sizeof(B)); - - return 0; - } // Отправляет всем клиентам сообщение о смерти игрока. // Аргументы: игрок, атакующий, ассист @@ -858,7 +840,7 @@ void netRegServPacket(uniPacket_e Event,netServFn_s Fn) { ServerRegMap.insert(std::make_pair(Event,Fn)); } -extern "C" void __cdecl onNetPacket(BYTE *&BufStart,BYTE *E); +extern "C" void __cdecl onNetPacketClient(BYTE *&BufStart,BYTE *E); @@ -871,7 +853,7 @@ extern "C" void __cdecl onNetPacket(BYTE *&BufStart,BYTE *E); extern void netOnWallChanged(wallRec *newData); extern void netOnSendArchive(int Size,char *Name,char *NameE); extern void netOnAbortDownload(); -void __cdecl onNetPacket(BYTE *&BufStart,BYTE *E)/// Полученые клиентом +void __cdecl onNetPacketClient(BYTE *&BufStart,BYTE *E)/// Полученые клиентом { bool found=true; // ВНИМАНИЕ! Для всех ВЫФИЛЬТРОВЫВАЕМЫХ пакетов - обязательно ставьте found=true! Иначе не будет производиться обработка других пакетов в ЭТОМ же фрейме! @@ -966,7 +948,7 @@ extern char *(__cdecl *mapGetName)(); extern void spellServDoCustom(int SpellArr[5],bool OnSelf,BYTE *MyPlayer,BYTE *MyUc); extern void netOnClientTryUse(BYTE *Start,BYTE *End,BYTE *MyUc,void *Player); -extern "C" void __cdecl onNetPacket2(BYTE *&BufStart,BYTE *E, +extern "C" void __cdecl onNetPacketServer(BYTE *&BufStart,BYTE *E, BYTE *MyPlayer, /// bigUnitStruct BYTE *MyUc)/// Полученые сервером { @@ -1283,22 +1265,23 @@ void netInit() registerserver("netReportCharges",&netReportChargesL); registerserver("netClientPrint",&netDoPrintConsoleL); - registerserver("netFake",&netFake); + //registerserver("netFake",&netFake); // crashes client registerserver("netMsgPlrDied",&playerDeathL); registerserver("netMsgBox", &netSendMessageBoxL); registerserver("netParticleFx", &netTestParticleL); - registerserver("netSpriteIntensity", &netTestIntensityL); - registerserver("netSpriteColor", &netTestColorL); + // research is not complete yet; messes up client + //registerserver("netSpriteIntensity", &netTestIntensityL); + //registerserver("netSpriteColor", &netTestColorL); registerserver("sendChat",&sendChat); registerclient("netGetVersion",netGetVersion); registerclient("netVersionRq",&netVersionRq); /// функция проверки клиентом версии сервера registerclient("netSendFx",&netSendFx); - char Buf[40]=""; - sprintf(Buf,"net%s%s%d","To",Block2,2);/// чтобы не выдавать важную команду всяким ларбосам + //char Buf[40]=""; + //sprintf(Buf,"net%s%s%d","To",Block2,2);/// чтобы не выдавать важную команду всяким ларбосам + //registerclient(Buf,&sendToServer); registerclient("netRename",&netRename); - registerclient(Buf,&sendToServer); -} +} diff --git a/util.cpp b/util.cpp index a29e48d..57cd282 100644 --- a/util.cpp +++ b/util.cpp @@ -1220,7 +1220,7 @@ int initWindowedMode(int param1, int param2, int param3) return initWindowedModeNox(param1, param2, param3); } -void injectCon() +void initStepTwo() { initSDL(); //MessageBox(0,"!1",0,0); @@ -1388,7 +1388,8 @@ void injectCon() ASSIGN(j_time,0x00416BF0); ASSIGN(consoleTokenCipher, 0x00443BF0); -#include "lua/binClient/clientOnJoin.lua.inc" +// Removed by angrykirc b/c not needed now +//#include "lua/binClient/clientOnJoin.lua.inc" lua_getfield(L,LUA_REGISTRYINDEX,"client"); lua_setfenv(L,-2); @@ -1406,7 +1407,6 @@ void injectCon() //lua_pushnil(L); //lua_setglobal(L,"os");/// выкинуть вон небезопасную таблицу - int topLoad = lua_gettop(L); lua_getfield(L, LUA_REGISTRYINDEX, "require.lua"); @@ -1435,9 +1435,6 @@ void injectCon() lua_pcall(L, 0, 0, 0); } - - //MessageBox(0,"!2",0,0); - byte OperatorJmps=0xEB; byte OperatorMovEax1[]={0xB8,0x01,0,0,0}; byte OperatorNop[]={0x90,0x90}; @@ -1461,7 +1458,6 @@ void injectCon() // Убиваем (или чиним?...) сисоп-закладку: InjectAddr(0x444158 + 1, &hostIdx); - //MessageBox(0,"!3",0,0); registerclient("getGameDirectory", &getGameDirectoryL); registerclient("getNormalizedPath", &getNormalizedPathL); From c2b9149ef758c065d9a1a026cee8ae4006604ab6 Mon Sep 17 00:00:00 2001 From: AngryKirC Date: Sat, 25 Apr 2020 16:57:03 +0400 Subject: [PATCH 3/7] Improved anti-crash protection; repository cleanup --- .gitignore | 10 +- Libs/LuaJIT-2.0.3/src/lj_bcdef.h | 226 ------ Libs/LuaJIT-2.0.3/src/lj_ffdef.h | 210 ------ Libs/LuaJIT-2.0.3/src/lj_folddef.h | 1068 ---------------------------- Libs/LuaJIT-2.0.3/src/lj_libdef.h | 393 ---------- Libs/LuaJIT-2.0.3/src/lj_recdef.h | 263 ------- bugsAndChips.cpp | 69 +- 7 files changed, 50 insertions(+), 2189 deletions(-) delete mode 100644 Libs/LuaJIT-2.0.3/src/lj_bcdef.h delete mode 100644 Libs/LuaJIT-2.0.3/src/lj_ffdef.h delete mode 100644 Libs/LuaJIT-2.0.3/src/lj_folddef.h delete mode 100644 Libs/LuaJIT-2.0.3/src/lj_libdef.h delete mode 100644 Libs/LuaJIT-2.0.3/src/lj_recdef.h diff --git a/.gitignore b/.gitignore index 6443553..ea58726 100644 --- a/.gitignore +++ b/.gitignore @@ -8,6 +8,12 @@ /Libs/LuaJIT-2.0.3/src/luajit.exe /Libs/LuaJIT-2.0.3/src/luajit.log /Libs/LuaJIT-2.0.3/src/jit/vmdef.lua +/Libs/LuaJIT-2.0.3/src/lj_bcdef.h +/Libs/LuaJIT-2.0.3/src/lj_ffdef.h +/Libs/LuaJIT-2.0.3/src/lj_folddef.h +/Libs/LuaJIT-2.0.3/src/lj_libdef.h +/Libs/LuaJIT-2.0.3/src/lj_recdef.h +/Libs/LuaJIT-2.0.3/src/jit/vmdef.lua /Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Debug/ /Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Debug/ /Libs/SDL/SDL2-2.0.3/VisualC/SDL/Win32/Release/ @@ -27,6 +33,8 @@ /UniModNew.opensdf /UniModNew.sdf /*.suo +*.user +/Libs/*.md /ipch /Libs/SDL/SDL2-2.0.8/VisualC/SDL/Win32/Release/ /Libs/SDL/SDL2-2.0.8/VisualC/SDL/Win32/Debug/ @@ -34,6 +42,6 @@ /Libs/SDL/SDL2_ttf-2.0.12/VisualC/Win32/Debug/ /Libs/SDL/VQA/Debug/ /Libs/SDL/VQA/Release/ -/Libs/VQA.lib +/Libs/*.lib /Libs/SDL/VQA/Release/ /Libs/SDL/VQA/Debug/ diff --git a/Libs/LuaJIT-2.0.3/src/lj_bcdef.h b/Libs/LuaJIT-2.0.3/src/lj_bcdef.h deleted file mode 100644 index 394ca30..0000000 --- a/Libs/LuaJIT-2.0.3/src/lj_bcdef.h +++ /dev/null @@ -1,226 +0,0 @@ -/* This is a generated file. DO NOT EDIT! */ - -LJ_DATADEF const uint16_t lj_bc_ofs[] = { -0, -65, -130, -195, -260, -387, -517, -577, -637, -701, -765, -816, -866, -916, -966, -1006, -1046, -1077, -1108, -1144, -1212, -1255, -1298, -1341, -1384, -1432, -1475, -1518, -1561, -1604, -1632, -1686, -1740, -1794, -1848, -1887, -1946, -2034, -2067, -2100, -2123, -2146, -2169, -2211, -2251, -2334, -2412, -2444, -2476, -2526, -2596, -2709, -2796, -2812, -2828, -2976, -3102, -3205, -3376, -3615, -3741, -3883, -3928, -3969, -3973, -4119, -4194, -4364, -4552, -4639, -4643, -4772, -4859, -4964, -5041, -5126, -5145, -5200, -5252, -5271, -5314, -5352, -5371, -5388, -5418, -5442, -5461, -5522, -5575, -5575, -5692, -5693, -5769, -7416, -7487, -7961, -8081, -8138, -8253, -7536, -7678, -7768, -7835, -7861, -8308, -8348, -8980, -8403, -8719, -9022, -9122, -9141, -9160, -9218, -9248, -9279, -9307, -9335, -9365, -9403, -9443, -9473, -9511, -9549, -9703, -9838, -9587, -9587, -9188, -9619, -9974, -9926, -9660, -10018, -10065, -10972, -11297, -11254, -11358, -11426, -11497, -11568, -11639, -11016, -11098, -11180, -10119, -10148, -10199, -10313, -10478, -10603, -10709, -10820, -10931 -}; - -LJ_DATADEF const uint16_t lj_bc_mode[] = { -BCDEF(BCMODE) -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF, -BCMODE_FF -}; - diff --git a/Libs/LuaJIT-2.0.3/src/lj_ffdef.h b/Libs/LuaJIT-2.0.3/src/lj_ffdef.h deleted file mode 100644 index 29dd4d3..0000000 --- a/Libs/LuaJIT-2.0.3/src/lj_ffdef.h +++ /dev/null @@ -1,210 +0,0 @@ -/* This is a generated file. DO NOT EDIT! */ - -FFDEF(assert) -FFDEF(type) -FFDEF(next) -FFDEF(pairs) -FFDEF(ipairs_aux) -FFDEF(ipairs) -FFDEF(getmetatable) -FFDEF(setmetatable) -FFDEF(getfenv) -FFDEF(setfenv) -FFDEF(rawget) -FFDEF(rawset) -FFDEF(rawequal) -FFDEF(unpack) -FFDEF(select) -FFDEF(tonumber) -FFDEF(tostring) -FFDEF(error) -FFDEF(pcall) -FFDEF(xpcall) -FFDEF(loadfile) -FFDEF(load) -FFDEF(loadstring) -FFDEF(dofile) -FFDEF(gcinfo) -FFDEF(collectgarbage) -FFDEF(newproxy) -FFDEF(print) -FFDEF(coroutine_status) -FFDEF(coroutine_running) -FFDEF(coroutine_create) -FFDEF(coroutine_yield) -FFDEF(coroutine_resume) -FFDEF(coroutine_wrap_aux) -FFDEF(coroutine_wrap) -FFDEF(math_abs) -FFDEF(math_floor) -FFDEF(math_ceil) -FFDEF(math_sqrt) -FFDEF(math_log10) -FFDEF(math_exp) -FFDEF(math_sin) -FFDEF(math_cos) -FFDEF(math_tan) -FFDEF(math_asin) -FFDEF(math_acos) -FFDEF(math_atan) -FFDEF(math_sinh) -FFDEF(math_cosh) -FFDEF(math_tanh) -FFDEF(math_frexp) -FFDEF(math_modf) -FFDEF(math_deg) -FFDEF(math_rad) -FFDEF(math_log) -FFDEF(math_atan2) -FFDEF(math_pow) -FFDEF(math_fmod) -FFDEF(math_ldexp) -FFDEF(math_min) -FFDEF(math_max) -FFDEF(math_random) -FFDEF(math_randomseed) -FFDEF(bit_tobit) -FFDEF(bit_bnot) -FFDEF(bit_bswap) -FFDEF(bit_lshift) -FFDEF(bit_rshift) -FFDEF(bit_arshift) -FFDEF(bit_rol) -FFDEF(bit_ror) -FFDEF(bit_band) -FFDEF(bit_bor) -FFDEF(bit_bxor) -FFDEF(bit_tohex) -FFDEF(string_len) -FFDEF(string_byte) -FFDEF(string_char) -FFDEF(string_sub) -FFDEF(string_rep) -FFDEF(string_reverse) -FFDEF(string_lower) -FFDEF(string_upper) -FFDEF(string_dump) -FFDEF(string_find) -FFDEF(string_match) -FFDEF(string_gmatch_aux) -FFDEF(string_gmatch) -FFDEF(string_gsub) -FFDEF(string_format) -FFDEF(table_foreachi) -FFDEF(table_foreach) -FFDEF(table_getn) -FFDEF(table_maxn) -FFDEF(table_insert) -FFDEF(table_remove) -FFDEF(table_concat) -FFDEF(table_sort) -FFDEF(io_method_close) -FFDEF(io_method_read) -FFDEF(io_method_write) -FFDEF(io_method_flush) -FFDEF(io_method_seek) -FFDEF(io_method_setvbuf) -FFDEF(io_method_lines) -FFDEF(io_method___gc) -FFDEF(io_method___tostring) -FFDEF(io_open) -FFDEF(io_popen) -FFDEF(io_tmpfile) -FFDEF(io_close) -FFDEF(io_read) -FFDEF(io_write) -FFDEF(io_flush) -FFDEF(io_input) -FFDEF(io_output) -FFDEF(io_lines) -FFDEF(io_type) -FFDEF(os_execute) -FFDEF(os_remove) -FFDEF(os_rename) -FFDEF(os_tmpname) -FFDEF(os_getenv) -FFDEF(os_exit) -FFDEF(os_clock) -FFDEF(os_date) -FFDEF(os_time) -FFDEF(os_difftime) -FFDEF(os_setlocale) -FFDEF(debug_getregistry) -FFDEF(debug_getmetatable) -FFDEF(debug_setmetatable) -FFDEF(debug_getfenv) -FFDEF(debug_setfenv) -FFDEF(debug_getinfo) -FFDEF(debug_getlocal) -FFDEF(debug_setlocal) -FFDEF(debug_getupvalue) -FFDEF(debug_setupvalue) -FFDEF(debug_upvalueid) -FFDEF(debug_upvaluejoin) -FFDEF(debug_sethook) -FFDEF(debug_gethook) -FFDEF(debug_debug) -FFDEF(debug_traceback) -FFDEF(jit_on) -FFDEF(jit_off) -FFDEF(jit_flush) -FFDEF(jit_status) -FFDEF(jit_attach) -FFDEF(jit_util_funcinfo) -FFDEF(jit_util_funcbc) -FFDEF(jit_util_funck) -FFDEF(jit_util_funcuvname) -FFDEF(jit_util_traceinfo) -FFDEF(jit_util_traceir) -FFDEF(jit_util_tracek) -FFDEF(jit_util_tracesnap) -FFDEF(jit_util_tracemc) -FFDEF(jit_util_traceexitstub) -FFDEF(jit_util_ircalladdr) -FFDEF(jit_opt_start) -FFDEF(ffi_meta___index) -FFDEF(ffi_meta___newindex) -FFDEF(ffi_meta___eq) -FFDEF(ffi_meta___len) -FFDEF(ffi_meta___lt) -FFDEF(ffi_meta___le) -FFDEF(ffi_meta___concat) -FFDEF(ffi_meta___call) -FFDEF(ffi_meta___add) -FFDEF(ffi_meta___sub) -FFDEF(ffi_meta___mul) -FFDEF(ffi_meta___div) -FFDEF(ffi_meta___mod) -FFDEF(ffi_meta___pow) -FFDEF(ffi_meta___unm) -FFDEF(ffi_meta___tostring) -FFDEF(ffi_meta___pairs) -FFDEF(ffi_meta___ipairs) -FFDEF(ffi_clib___index) -FFDEF(ffi_clib___newindex) -FFDEF(ffi_clib___gc) -FFDEF(ffi_callback_free) -FFDEF(ffi_callback_set) -FFDEF(ffi_cdef) -FFDEF(ffi_new) -FFDEF(ffi_cast) -FFDEF(ffi_typeof) -FFDEF(ffi_istype) -FFDEF(ffi_sizeof) -FFDEF(ffi_alignof) -FFDEF(ffi_offsetof) -FFDEF(ffi_errno) -FFDEF(ffi_string) -FFDEF(ffi_copy) -FFDEF(ffi_fill) -FFDEF(ffi_abi) -FFDEF(ffi_metatype) -FFDEF(ffi_gc) -FFDEF(ffi_load) - -#undef FFDEF - -#ifndef FF_NUM_ASMFUNC -#define FF_NUM_ASMFUNC 62 -#endif - diff --git a/Libs/LuaJIT-2.0.3/src/lj_folddef.h b/Libs/LuaJIT-2.0.3/src/lj_folddef.h deleted file mode 100644 index c4ec4ef..0000000 --- a/Libs/LuaJIT-2.0.3/src/lj_folddef.h +++ /dev/null @@ -1,1068 +0,0 @@ -/* This is a generated file. DO NOT EDIT! */ - -static const FoldFunc fold_func[] = { - fold_kfold_numarith, - fold_kfold_ldexp, - fold_kfold_fpmath, - fold_kfold_numpow, - fold_kfold_numcomp, - fold_kfold_intarith, - fold_kfold_intovarith, - fold_kfold_bnot, - fold_kfold_bswap, - fold_kfold_intcomp, - fold_kfold_intcomp0, - fold_kfold_int64arith, - fold_kfold_int64arith2, - fold_kfold_int64shift, - fold_kfold_bnot64, - fold_kfold_bswap64, - fold_kfold_int64comp, - fold_kfold_int64comp0, - fold_kfold_snew_kptr, - fold_kfold_snew_empty, - fold_kfold_strref, - fold_kfold_strref_snew, - fold_kfold_strcmp, - fold_kfold_add_kgc, - fold_kfold_add_kptr, - fold_kfold_add_kright, - fold_kfold_tobit, - fold_kfold_conv_kint_num, - fold_kfold_conv_kintu32_num, - fold_kfold_conv_kint_ext, - fold_kfold_conv_kint_i64, - fold_kfold_conv_kint64_num_i64, - fold_kfold_conv_kint64_num_u64, - fold_kfold_conv_kint64_int_i64, - fold_kfold_conv_knum_int_num, - fold_kfold_conv_knum_u32_num, - fold_kfold_conv_knum_i64_num, - fold_kfold_conv_knum_u64_num, - fold_kfold_tostr_knum, - fold_kfold_tostr_kint, - fold_kfold_strto, - lj_opt_cse, - fold_kfold_kref, - fold_shortcut_round, - fold_shortcut_left, - fold_shortcut_dropleft, - fold_shortcut_leftleft, - fold_simplify_numadd_negx, - fold_simplify_numadd_xneg, - fold_simplify_numsub_k, - fold_simplify_numsub_negk, - fold_simplify_numsub_xneg, - fold_simplify_nummuldiv_k, - fold_simplify_nummuldiv_negk, - fold_simplify_nummuldiv_negneg, - fold_simplify_numpow_xk, - fold_simplify_numpow_kx, - fold_shortcut_conv_num_int, - fold_simplify_conv_int_num, - fold_simplify_conv_i64_num, - fold_simplify_conv_int_i64, - fold_simplify_conv_flt_num, - fold_simplify_tobit_conv, - fold_simplify_floor_conv, - fold_simplify_conv_sext, - fold_simplify_conv_narrow, - fold_cse_conv, - fold_narrow_convert, - fold_simplify_intadd_k, - fold_simplify_intmul_k, - fold_simplify_intsub_k, - fold_simplify_intsub_kleft, - fold_simplify_intadd_k64, - fold_simplify_intsub_k64, - fold_simplify_intmul_k32, - fold_simplify_intmul_k64, - fold_simplify_intmod_k, - fold_simplify_intmod_kleft, - fold_simplify_intsub, - fold_simplify_intsubadd_leftcancel, - fold_simplify_intsubsub_leftcancel, - fold_simplify_intsubsub_rightcancel, - fold_simplify_intsubadd_rightcancel, - fold_simplify_intsubaddadd_cancel, - fold_simplify_band_k, - fold_simplify_bor_k, - fold_simplify_bxor_k, - fold_simplify_shift_ik, - fold_simplify_shift_andk, - fold_simplify_shift1_ki, - fold_simplify_shift2_ki, - fold_simplify_shiftk_andk, - fold_simplify_andk_shiftk, - fold_reassoc_intarith_k, - fold_reassoc_intarith_k64, - fold_reassoc_dup, - fold_reassoc_bxor, - fold_reassoc_shift, - fold_reassoc_minmax_k, - fold_reassoc_minmax_left, - fold_reassoc_minmax_right, - fold_abc_fwd, - fold_abc_k, - fold_abc_invar, - fold_comm_swap, - fold_comm_equal, - fold_comm_comp, - fold_comm_dup, - fold_comm_bxor, - fold_merge_eqne_snew_kgc, - lj_opt_fwd_aload, - fold_kfold_hload_kkptr, - lj_opt_fwd_hload, - lj_opt_fwd_uload, - lj_opt_fwd_tab_len, - fold_cse_uref, - lj_opt_fwd_hrefk, - fold_fwd_href_tnew, - fold_fwd_href_tdup, - fold_fload_tab_tnew_asize, - fold_fload_tab_tnew_hmask, - fold_fload_tab_tdup_asize, - fold_fload_tab_tdup_hmask, - fold_fload_tab_ah, - fold_fload_str_len_kgc, - fold_fload_str_len_snew, - fold_fload_cdata_typeid_kgc, - fold_fload_cdata_int64_kgc, - fold_fload_cdata_typeid_cnew, - fold_fload_cdata_ptr_int64_cnew, - lj_opt_cse, - lj_opt_fwd_fload, - fold_fwd_sload, - fold_xload_kptr, - lj_opt_fwd_xload, - fold_barrier_tab, - fold_barrier_tnew_tdup, - lj_opt_dse_ahstore, - lj_opt_dse_ustore, - lj_opt_dse_fstore, - lj_opt_dse_xstore, - lj_ir_emit -}; - -static const uint32_t fold_hash[916] = { -0xffffffff, -0xffffffff, -0x5b4c8016, -0x0d4e7016, -0xffffffff, -0x1000701c, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x29110c1a, -0xffffffff, -0xffffffff, -0x5b488016, -0x0d4a7016, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x7b87fc07, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x0d467016, -0xffffffff, -0x5a4c73ff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x5153fc29, -0xffffffff, -0xffffffff, -0xffffffff, -0x5d408016, -0xffffffff, -0x594873ff, -0x8187440f, -0xffffffff, -0xffffffff, -0xffffffff, -0x8287fc0f, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x6715ffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x2a11fc1a, -0xffffffff, -0x1daa5a70, -0xffffffff, -0xffffffff, -0x0a0bfc16, -0x5c408c16, -0x6911ffff, -0x8db7ffff, -0xffffffff, -0xffffffff, -0x1caa59d4, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x6a0dffff, -0x2b68d002, -0xffffffff, -0x3cab5695, -0xffffffff, -0x41aaa675, -0xffffffff, -0xffffffff, -0xffffffff, -0x27ae5800, -0xffffffff, -0x6a09ffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x7f865c0f, -0xffffffff, -0xffffffff, -0xffffffff, -0x6a05ffff, -0x42abffff, -0x5e44881c, -0x5d50a016, -0x066c5816, -0x00646c1b, -0x75753bff, -0x1951fc18, -0x6264c81b, -0x1850641c, -0xffffffff, -0x6a01ffff, -0x87a7ffff, -0x4953fc1c, -0x8da80000, -0x4f52a3ff, -0x00606c1b, -0xffffffff, -0xffffffff, -0xffffffff, -0x5d428416, -0x88a53800, -0xffffffff, -0xffffffff, -0xffffffff, -0x05645816, -0xffffffff, -0x005c6c1b, -0x20aa71d6, -0xffffffff, -0xffffffff, -0xffffffff, -0x1399fc16, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x157f33ff, -0xffffffff, -0xffffffff, -0x584dfc20, -0xffffffff, -0xffffffff, -0xffffffff, -0x8d9bffff, -0xffffffff, -0x055c5816, -0xffffffff, -0x00546c1b, -0xffffffff, -0xffffffff, -0x5849fc20, -0xffffffff, -0xffffffff, -0xffffffff, -0x8c97ffff, -0x5543fc1c, -0x05585816, -0xffffffff, -0x00506c1b, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x8a93ffff, -0x26ae6c00, -0x05545816, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x76753c17, -0x41aaa695, -0xffffffff, -0x898fffff, -0xffffffff, -0x05505816, -0xffffffff, -0xffffffff, -0xffffffff, -0x858867ff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x848bffff, -0xffffffff, -0x054c5816, -0x79873c06, -0x47525bff, -0xffffffff, -0x3f695401, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x8387ffff, -0xffffffff, -0x05485816, -0xffffffff, -0x5a4e5bff, -0xffffffff, -0xffffffff, -0x6264c816, -0x43aaa26e, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x05445816, -0xffffffff, -0x5a4a5bff, -0xffffffff, -0xffffffff, -0xffffffff, -0x3455fc1b, -0x0c5a701c, -0x6366cbff, -0x0e3c7000, -0xffffffff, -0x05405816, -0xffffffff, -0x59465bff, -0xffffffff, -0xffffffff, -0xffffffff, -0x41aaa276, -0x0c56701c, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x21aa7275, -0x0b52701c, -0x61489016, -0x6465fc33, -0x8d77ffff, -0xffffffff, -0x7b87fc05, -0xffffffff, -0xffffffff, -0x2a126bff, -0x385a6fff, -0xffffffff, -0x446dfc16, -0xffffffff, -0x7473ffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x7d873000, -0xffffffff, -0x5c409016, -0x686fffff, -0x8187440d, -0xffffffff, -0xffffffff, -0x3554b81b, -0x8287fc0d, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x686bffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x8d9ffc00, -0x737a5fff, -0x41aaaa75, -0xffffffff, -0xffffffff, -0x5e40801c, -0x0b42701c, -0x6b67ffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x2b68d000, -0xffffffff, -0xffffffff, -0x6d133017, -0xffffffff, -0xffffffff, -0x4c59fc16, -0xffffffff, -0xffffffff, -0x110bfc1c, -0x3aab566e, -0xffffffff, -0x5052a7ff, -0xffffffff, -0xffffffff, -0xffffffff, -0x6515fc28, -0x4a55fc16, -0x7f865c0d, -0x88a53c00, -0x41aaa296, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x4451fc16, -0xffffffff, -0x60448bff, -0x21aa7295, -0xffffffff, -0x3cab5676, -0x04106c1b, -0xffffffff, -0x78873807, -0xffffffff, -0xffffffff, -0x574dfc16, -0xffffffff, -0x4e53ffff, -0xffffffff, -0x09145816, -0xffffffff, -0x040c6c1b, -0x8287fc00, -0x5e50a01c, -0x6467fc32, -0xffffffff, -0x5749fc16, -0xffffffff, -0xffffffff, -0xffffffff, -0x2a105816, -0x2e3e7c00, -0x04086c1b, -0x7083fc00, -0xffffffff, -0xffffffff, -0xffffffff, -0x5645fc16, -0xffffffff, -0x22aa6e6e, -0x5e42841c, -0x614e9c16, -0x090c5816, -0x04046c1b, -0x1eaa5ab3, -0xffffffff, -0xffffffff, -0xffffffff, -0x5441fc16, -0x41aaaa95, -0xffffffff, -0x5352a028, -0x09085816, -0x17505c16, -0x04006c1b, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x6b43ffff, -0xffffffff, -0x09045816, -0xffffffff, -0x43aaa2ae, -0xffffffff, -0xffffffff, -0xffffffff, -0x083e5800, -0x7c865c00, -0xffffffff, -0x76753c15, -0x3051fc2e, -0x09005816, -0xffffffff, -0xffffffff, -0xffffffff, -0x3aab568e, -0xffffffff, -0x43aaa66e, -0xffffffff, -0x1daa5a71, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x2a12701c, -0x5f66cfff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x3cab5696, -0xffffffff, -0x100e701c, -0x41aaa676, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x2a125c17, -0x3654b82e, -0x100a701c, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x1006701c, -0xffffffff, -0x1951fc19, -0xffffffff, -0xffffffff, -0xffffffff, -0x23aa6e8e, -0xffffffff, -0x5b4e8016, -0xffffffff, -0x1eaa5ad3, -0x1002701c, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x29130c1a, -0xffffffff, -0xffffffff, -0x0d4c7016, -0xffffffff, -0x475273ff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x5b468016, -0x0d487016, -0x5a4e73ff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x5d54a816, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x5a4a73ff, -0x6615fc16, -0x3bab56ae, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x594673ff, -0xffffffff, -0x61468c16, -0x8d17ffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x2a13fc1a, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x6913ffff, -0x40abfeb3, -0x8db9ffff, -0x41aaa696, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x6a0fffff, -0x8db5ffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x7a873c07, -0xffffffff, -0xffffffff, -0xffffffff, -0x6a0bffff, -0x3f695402, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x24aa6eae, -0xffffffff, -0xffffffff, -0x6a07ffff, -0xffffffff, -0xffffffff, -0x066e5816, -0xffffffff, -0x00666c1b, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x6a03ffff, -0xffffffff, -0x4b55fc1c, -0x066a5816, -0xffffffff, -0x00626c1b, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x4851fc1c, -0x05665816, -0x18506016, -0x005e6c1b, -0x12986416, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x8da1ffff, -0xffffffff, -0x3bab56ce, -0xffffffff, -0x43aaa6ae, -0xffffffff, -0xffffffff, -0x584ffc20, -0x7b87fc06, -0xffffffff, -0x5f4287ff, -0x8d9dffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x00566c1b, -0xffffffff, -0xffffffff, -0x584bfc20, -0x5253fc28, -0xffffffff, -0xffffffff, -0xffffffff, -0x5645fc1c, -0xffffffff, -0x40abfed3, -0x00526c1b, -0x8187440e, -0xffffffff, -0x5847fc20, -0x8287fc0e, -0xffffffff, -0xffffffff, -0x8b95ffff, -0x2e3c7800, -0x5441fc1c, -0xffffffff, -0xffffffff, -0xffffffff, -0x17505c1c, -0xffffffff, -0xffffffff, -0x41aaaa76, -0xffffffff, -0x614c9816, -0x8991ffff, -0x1daa5a6f, -0x05525816, -0x4d585bff, -0xffffffff, -0x8087400c, -0xffffffff, -0xffffffff, -0xffffffff, -0x1baa59d3, -0x828dffff, -0x25aa6ece, -0x054e5816, -0x76753c1b, -0xffffffff, -0xffffffff, -0xffffffff, -0x2b68d001, -0xffffffff, -0xffffffff, -0xffffffff, -0x8689ffff, -0xffffffff, -0x054a5816, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x43aca01b, -0x05465816, -0x7f865c0e, -0x5a4c5bff, -0x39ab55d3, -0x01626c16, -0x02686fff, -0x3457fc1b, -0xffffffff, -0xffffffff, -0x0f3e7000, -0x3dab55ae, -0x05425816, -0x1951fc17, -0x59485bff, -0xffffffff, -0xffffffff, -0xffffffff, -0x3153fc1b, -0x0c58701c, -0x5f64cbff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x035a6c16, -0xffffffff, -0xffffffff, -0xffffffff, -0x0b54701c, -0xffffffff, -0x8779ffff, -0x1faa71d5, -0xffffffff, -0xffffffff, -0x2d5eb81b, -0x72b5fc08, -0xffffffff, -0xffffffff, -0xffffffff, -0x0b50701c, -0x456ffc16, -0x7b75ffff, -0xffffffff, -0xffffffff, -0x147e5c16, -0xffffffff, -0xffffffff, -0x2a106bff, -0xffffffff, -0x1eaa5ab4, -0x446bfc16, -0xffffffff, -0xffffffff, -0xffffffff, -0x41aaaa96, -0xffffffff, -0x3556b81b, -0x87a5fc00, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x4e6dffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x3252b81b, -0xffffffff, -0x5e54a81c, -0xffffffff, -0xffffffff, -0x0b44701c, -0x28b05c00, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x73785fff, -0xffffffff, -0xffffffff, -0xffffffff, -0x0b40701c, -0xffffffff, -0x6b65ffff, -0xffffffff, -0xffffffff, -0x1daa5a72, -0xffffffff, -0xffffffff, -0xffffffff, -0x6266cc1b, -0xffffffff, -0x375bfc16, -0xffffffff, -0xffffffff, -0xffffffff, -0x3f695400, -0xffffffff, -0xffffffff, -0xffffffff, -0x6d113017, -0x3ead541b, -0xffffffff, -0x5d448816, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x18506416, -0xffffffff, -0xffffffff, -0x16b37400, -0xffffffff, -0x4653fc16, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x04126c1b, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x574ffc16, -0xffffffff, -0x6855ffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x040e6c1b, -0x41aaa275, -0xffffffff, -0xffffffff, -0xffffffff, -0x574bfc16, -0x6f826400, -0x6851ffff, -0x1eaa5ad4, -0x2a125816, -0xffffffff, -0x040a6c1b, -0x7185fc00, -0xffffffff, -0xffffffff, -0xffffffff, -0x5747fc16, -0x7b87fc04, -0xffffffff, -0xffffffff, -0x090e5816, -0xffffffff, -0x04066c1b, -0x6e81fc00, -0x1aac6c1b, -0x1850601c, -0x2e5cbbff, -0x5543fc16, -0xffffffff, -0xffffffff, -0xffffffff, -0x090a5816, -0xffffffff, -0x04026c1b, -0xffffffff, -0xffffffff, -0x8087440c, -0xffffffff, -0xffffffff, -0xffffffff, -0x6c45ffff, -0x8287fc0c, -0x09065816, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x6b41ffff, -0x3353fc2e, -0x09025816, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x2f50bbff, -0x073c5800, -0x6266cc16, -0x5f4083ff, -0xffffffff, -0xffffffff, -0x43aca41b, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x2a10701c, -0x6364cfff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x7e865c0c, -0xffffffff, -0xffffffff, -0x3656b82e, -0x41aaa295, -0x100c701c, -0x614a9416, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x2c5ebc1b, -0xffffffff, -0x2a105c17, -0xffffffff, -0x1008701c, -0x3cab5675, -0xffffffff, -0xffffffff, -0x77873806, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0x1004701c, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff, -0xffffffff -}; - -#define fold_hashkey(k) (lj_rol(lj_rol((k),17)-(k),16)%915) - diff --git a/Libs/LuaJIT-2.0.3/src/lj_libdef.h b/Libs/LuaJIT-2.0.3/src/lj_libdef.h deleted file mode 100644 index 5693a58..0000000 --- a/Libs/LuaJIT-2.0.3/src/lj_libdef.h +++ /dev/null @@ -1,393 +0,0 @@ -/* This is a generated file. DO NOT EDIT! */ - -#ifdef LJLIB_MODULE_base -#undef LJLIB_MODULE_base -static const lua_CFunction lj_lib_cf_base[] = { - lj_ffh_assert, - lj_ffh_next, - lj_ffh_pairs, - lj_ffh_ipairs_aux, - lj_ffh_ipairs, - lj_ffh_setmetatable, - lj_cf_getfenv, - lj_cf_setfenv, - lj_ffh_rawget, - lj_cf_rawset, - lj_cf_rawequal, - lj_cf_unpack, - lj_cf_select, - lj_ffh_tonumber, - lj_ffh_tostring, - lj_cf_error, - lj_ffh_pcall, - lj_cf_loadfile, - lj_cf_load, - lj_cf_loadstring, - lj_cf_dofile, - lj_cf_gcinfo, - lj_cf_collectgarbage, - lj_cf_newproxy, - lj_cf_print -}; -static const uint8_t lj_lib_init_base[] = { -2,0,28,70,97,115,115,101,114,116,195,110,105,108,199,98,111,111,108,101,97, -110,252,1,200,117,115,101,114,100,97,116,97,198,115,116,114,105,110,103,197, -117,112,118,97,108,198,116,104,114,101,97,100,197,112,114,111,116,111,200,102, -117,110,99,116,105,111,110,197,116,114,97,99,101,197,99,100,97,116,97,197,116, -97,98,108,101,252,9,198,110,117,109,98,101,114,132,116,121,112,101,68,110,101, -120,116,253,69,112,97,105,114,115,64,253,70,105,112,97,105,114,115,140,103, -101,116,109,101,116,97,116,97,98,108,101,76,115,101,116,109,101,116,97,116, -97,98,108,101,7,103,101,116,102,101,110,118,7,115,101,116,102,101,110,118,70, -114,97,119,103,101,116,6,114,97,119,115,101,116,8,114,97,119,101,113,117,97, -108,6,117,110,112,97,99,107,6,115,101,108,101,99,116,72,116,111,110,117,109, -98,101,114,195,110,105,108,197,102,97,108,115,101,196,116,114,117,101,72,116, -111,115,116,114,105,110,103,5,101,114,114,111,114,69,112,99,97,108,108,134, -120,112,99,97,108,108,8,108,111,97,100,102,105,108,101,4,108,111,97,100,10, -108,111,97,100,115,116,114,105,110,103,6,100,111,102,105,108,101,6,103,99,105, -110,102,111,14,99,111,108,108,101,99,116,103,97,114,98,97,103,101,252,2,8,110, -101,119,112,114,111,120,121,200,116,111,115,116,114,105,110,103,5,112,114,105, -110,116,252,3,200,95,86,69,82,83,73,79,78,250,255 -}; -#endif - -#ifdef LJLIB_MODULE_coroutine -#undef LJLIB_MODULE_coroutine -static const lua_CFunction lj_lib_cf_coroutine[] = { - lj_cf_coroutine_status, - lj_cf_coroutine_running, - lj_cf_coroutine_create, - lj_ffh_coroutine_yield, - lj_ffh_coroutine_resume, - lj_cf_coroutine_wrap -}; -static const uint8_t lj_lib_init_coroutine[] = { -30,13,6,6,115,116,97,116,117,115,7,114,117,110,110,105,110,103,6,99,114,101, -97,116,101,69,121,105,101,108,100,70,114,101,115,117,109,101,254,4,119,114, -97,112,255 -}; -#endif - -#ifdef LJLIB_MODULE_math -#undef LJLIB_MODULE_math -static const lua_CFunction lj_lib_cf_math[] = { - lj_ffh_math_abs, - lj_ffh_math_sqrt, - lj_ffh_math_log, - lj_ffh_math_atan2, - lj_ffh_math_ldexp, - lj_ffh_math_min, - lj_cf_math_random, - lj_cf_math_randomseed -}; -static const uint8_t lj_lib_init_math[] = { -37,16,30,67,97,98,115,133,102,108,111,111,114,132,99,101,105,108,68,115,113, -114,116,133,108,111,103,49,48,131,101,120,112,131,115,105,110,131,99,111,115, -131,116,97,110,132,97,115,105,110,132,97,99,111,115,132,97,116,97,110,132,115, -105,110,104,132,99,111,115,104,132,116,97,110,104,133,102,114,101,120,112,132, -109,111,100,102,251,248,193,99,26,220,165,76,64,131,100,101,103,251,57,157, -82,162,70,223,145,63,131,114,97,100,67,108,111,103,69,97,116,97,110,50,131, -112,111,119,132,102,109,111,100,69,108,100,101,120,112,67,109,105,110,131,109, -97,120,251,24,45,68,84,251,33,9,64,194,112,105,250,251,0,0,0,0,0,0,240,127, -196,104,117,103,101,250,252,2,6,114,97,110,100,111,109,252,2,10,114,97,110, -100,111,109,115,101,101,100,255 -}; -#endif - -#ifdef LJLIB_MODULE_bit -#undef LJLIB_MODULE_bit -static const lua_CFunction lj_lib_cf_bit[] = { - lj_ffh_bit_tobit, - lj_ffh_bit_lshift, - lj_ffh_bit_band, - lj_cf_bit_tohex -}; -static const uint8_t lj_lib_init_bit[] = { -65,42,12,69,116,111,98,105,116,132,98,110,111,116,133,98,115,119,97,112,70, -108,115,104,105,102,116,134,114,115,104,105,102,116,135,97,114,115,104,105, -102,116,131,114,111,108,131,114,111,114,68,98,97,110,100,131,98,111,114,132, -98,120,111,114,5,116,111,104,101,120,255 -}; -#endif - -#ifdef LJLIB_MODULE_string -#undef LJLIB_MODULE_string -static const lua_CFunction lj_lib_cf_string[] = { - lj_ffh_string_len, - lj_ffh_string_byte, - lj_ffh_string_char, - lj_ffh_string_sub, - lj_ffh_string_rep, - lj_ffh_string_reverse, - lj_cf_string_dump, - lj_cf_string_find, - lj_cf_string_match, - lj_cf_string_gmatch, - lj_cf_string_gsub, - lj_cf_string_format -}; -static const uint8_t lj_lib_init_string[] = { -77,53,14,67,108,101,110,68,98,121,116,101,68,99,104,97,114,67,115,117,98,67, -114,101,112,71,114,101,118,101,114,115,101,133,108,111,119,101,114,133,117, -112,112,101,114,4,100,117,109,112,4,102,105,110,100,5,109,97,116,99,104,254, -6,103,109,97,116,99,104,4,103,115,117,98,6,102,111,114,109,97,116,255 -}; -#endif - -#ifdef LJLIB_MODULE_table -#undef LJLIB_MODULE_table -static const lua_CFunction lj_lib_cf_table[] = { - lj_cf_table_foreachi, - lj_cf_table_foreach, - lj_ffh_table_getn, - lj_cf_table_maxn, - lj_cf_table_insert, - lj_cf_table_remove, - lj_cf_table_concat, - lj_cf_table_sort -}; -static const uint8_t lj_lib_init_table[] = { -92,61,8,8,102,111,114,101,97,99,104,105,7,102,111,114,101,97,99,104,68,103, -101,116,110,4,109,97,120,110,6,105,110,115,101,114,116,6,114,101,109,111,118, -101,6,99,111,110,99,97,116,4,115,111,114,116,255 -}; -#endif - -#ifdef LJLIB_MODULE_io_method -#undef LJLIB_MODULE_io_method -static const lua_CFunction lj_lib_cf_io_method[] = { - lj_cf_io_method_close, - lj_cf_io_method_read, - lj_cf_io_method_write, - lj_cf_io_method_flush, - lj_cf_io_method_seek, - lj_cf_io_method_setvbuf, - lj_cf_io_method_lines, - lj_cf_io_method___gc, - lj_cf_io_method___tostring -}; -static const uint8_t lj_lib_init_io_method[] = { -100,62,10,5,99,108,111,115,101,4,114,101,97,100,5,119,114,105,116,101,5,102, -108,117,115,104,4,115,101,101,107,7,115,101,116,118,98,117,102,5,108,105,110, -101,115,4,95,95,103,99,10,95,95,116,111,115,116,114,105,110,103,252,1,199,95, -95,105,110,100,101,120,250,255 -}; -#endif - -#ifdef LJLIB_MODULE_io -#undef LJLIB_MODULE_io -static const lua_CFunction lj_lib_cf_io[] = { - lj_cf_io_open, - lj_cf_io_popen, - lj_cf_io_tmpfile, - lj_cf_io_close, - lj_cf_io_read, - lj_cf_io_write, - lj_cf_io_flush, - lj_cf_io_input, - lj_cf_io_output, - lj_cf_io_lines, - lj_cf_io_type -}; -static const uint8_t lj_lib_init_io[] = { -109,62,12,252,2,192,250,4,111,112,101,110,5,112,111,112,101,110,7,116,109,112, -102,105,108,101,5,99,108,111,115,101,4,114,101,97,100,5,119,114,105,116,101, -5,102,108,117,115,104,5,105,110,112,117,116,6,111,117,116,112,117,116,5,108, -105,110,101,115,4,116,121,112,101,255 -}; -#endif - -#ifdef LJLIB_MODULE_os -#undef LJLIB_MODULE_os -static const lua_CFunction lj_lib_cf_os[] = { - lj_cf_os_execute, - lj_cf_os_remove, - lj_cf_os_rename, - lj_cf_os_tmpname, - lj_cf_os_getenv, - lj_cf_os_exit, - lj_cf_os_clock, - lj_cf_os_date, - lj_cf_os_time, - lj_cf_os_difftime, - lj_cf_os_setlocale -}; -static const uint8_t lj_lib_init_os[] = { -120,62,11,7,101,120,101,99,117,116,101,6,114,101,109,111,118,101,6,114,101, -110,97,109,101,7,116,109,112,110,97,109,101,6,103,101,116,101,110,118,4,101, -120,105,116,5,99,108,111,99,107,4,100,97,116,101,4,116,105,109,101,8,100,105, -102,102,116,105,109,101,9,115,101,116,108,111,99,97,108,101,255 -}; -#endif - -#ifdef LJLIB_MODULE_debug -#undef LJLIB_MODULE_debug -static const lua_CFunction lj_lib_cf_debug[] = { - lj_cf_debug_getregistry, - lj_cf_debug_getmetatable, - lj_cf_debug_setmetatable, - lj_cf_debug_getfenv, - lj_cf_debug_setfenv, - lj_cf_debug_getinfo, - lj_cf_debug_getlocal, - lj_cf_debug_setlocal, - lj_cf_debug_getupvalue, - lj_cf_debug_setupvalue, - lj_cf_debug_upvalueid, - lj_cf_debug_upvaluejoin, - lj_cf_debug_sethook, - lj_cf_debug_gethook, - lj_cf_debug_debug, - lj_cf_debug_traceback -}; -static const uint8_t lj_lib_init_debug[] = { -131,62,16,11,103,101,116,114,101,103,105,115,116,114,121,12,103,101,116,109, -101,116,97,116,97,98,108,101,12,115,101,116,109,101,116,97,116,97,98,108,101, -7,103,101,116,102,101,110,118,7,115,101,116,102,101,110,118,7,103,101,116,105, -110,102,111,8,103,101,116,108,111,99,97,108,8,115,101,116,108,111,99,97,108, -10,103,101,116,117,112,118,97,108,117,101,10,115,101,116,117,112,118,97,108, -117,101,9,117,112,118,97,108,117,101,105,100,11,117,112,118,97,108,117,101, -106,111,105,110,7,115,101,116,104,111,111,107,7,103,101,116,104,111,111,107, -5,100,101,98,117,103,9,116,114,97,99,101,98,97,99,107,255 -}; -#endif - -#ifdef LJLIB_MODULE_jit -#undef LJLIB_MODULE_jit -static const lua_CFunction lj_lib_cf_jit[] = { - lj_cf_jit_on, - lj_cf_jit_off, - lj_cf_jit_flush, - lj_cf_jit_status, - lj_cf_jit_attach -}; -static const uint8_t lj_lib_init_jit[] = { -147,62,9,2,111,110,3,111,102,102,5,102,108,117,115,104,6,115,116,97,116,117, -115,6,97,116,116,97,99,104,252,5,194,111,115,250,252,4,196,97,114,99,104,250, -252,3,203,118,101,114,115,105,111,110,95,110,117,109,250,252,2,199,118,101, -114,115,105,111,110,250,255 -}; -#endif - -#ifdef LJLIB_MODULE_jit_util -#undef LJLIB_MODULE_jit_util -static const lua_CFunction lj_lib_cf_jit_util[] = { - lj_cf_jit_util_funcinfo, - lj_cf_jit_util_funcbc, - lj_cf_jit_util_funck, - lj_cf_jit_util_funcuvname, - lj_cf_jit_util_traceinfo, - lj_cf_jit_util_traceir, - lj_cf_jit_util_tracek, - lj_cf_jit_util_tracesnap, - lj_cf_jit_util_tracemc, - lj_cf_jit_util_traceexitstub, - lj_cf_jit_util_ircalladdr -}; -static const uint8_t lj_lib_init_jit_util[] = { -152,62,11,8,102,117,110,99,105,110,102,111,6,102,117,110,99,98,99,5,102,117, -110,99,107,10,102,117,110,99,117,118,110,97,109,101,9,116,114,97,99,101,105, -110,102,111,7,116,114,97,99,101,105,114,6,116,114,97,99,101,107,9,116,114,97, -99,101,115,110,97,112,7,116,114,97,99,101,109,99,13,116,114,97,99,101,101,120, -105,116,115,116,117,98,10,105,114,99,97,108,108,97,100,100,114,255 -}; -#endif - -#ifdef LJLIB_MODULE_jit_opt -#undef LJLIB_MODULE_jit_opt -static const lua_CFunction lj_lib_cf_jit_opt[] = { - lj_cf_jit_opt_start -}; -static const uint8_t lj_lib_init_jit_opt[] = { -163,62,1,5,115,116,97,114,116,255 -}; -#endif - -#ifdef LJLIB_MODULE_ffi_meta -#undef LJLIB_MODULE_ffi_meta -static const lua_CFunction lj_lib_cf_ffi_meta[] = { - lj_cf_ffi_meta___index, - lj_cf_ffi_meta___newindex, - lj_cf_ffi_meta___eq, - lj_cf_ffi_meta___len, - lj_cf_ffi_meta___lt, - lj_cf_ffi_meta___le, - lj_cf_ffi_meta___concat, - lj_cf_ffi_meta___call, - lj_cf_ffi_meta___add, - lj_cf_ffi_meta___sub, - lj_cf_ffi_meta___mul, - lj_cf_ffi_meta___div, - lj_cf_ffi_meta___mod, - lj_cf_ffi_meta___pow, - lj_cf_ffi_meta___unm, - lj_cf_ffi_meta___tostring, - lj_cf_ffi_meta___pairs, - lj_cf_ffi_meta___ipairs -}; -static const uint8_t lj_lib_init_ffi_meta[] = { -164,62,19,7,95,95,105,110,100,101,120,10,95,95,110,101,119,105,110,100,101, -120,4,95,95,101,113,5,95,95,108,101,110,4,95,95,108,116,4,95,95,108,101,8,95, -95,99,111,110,99,97,116,6,95,95,99,97,108,108,5,95,95,97,100,100,5,95,95,115, -117,98,5,95,95,109,117,108,5,95,95,100,105,118,5,95,95,109,111,100,5,95,95, -112,111,119,5,95,95,117,110,109,10,95,95,116,111,115,116,114,105,110,103,7, -95,95,112,97,105,114,115,8,95,95,105,112,97,105,114,115,195,102,102,105,203, -95,95,109,101,116,97,116,97,98,108,101,250,255 -}; -#endif - -#ifdef LJLIB_MODULE_ffi_clib -#undef LJLIB_MODULE_ffi_clib -static const lua_CFunction lj_lib_cf_ffi_clib[] = { - lj_cf_ffi_clib___index, - lj_cf_ffi_clib___newindex, - lj_cf_ffi_clib___gc -}; -static const uint8_t lj_lib_init_ffi_clib[] = { -182,62,3,7,95,95,105,110,100,101,120,10,95,95,110,101,119,105,110,100,101,120, -4,95,95,103,99,255 -}; -#endif - -#ifdef LJLIB_MODULE_ffi_callback -#undef LJLIB_MODULE_ffi_callback -static const lua_CFunction lj_lib_cf_ffi_callback[] = { - lj_cf_ffi_callback_free, - lj_cf_ffi_callback_set -}; -static const uint8_t lj_lib_init_ffi_callback[] = { -185,62,3,4,102,114,101,101,3,115,101,116,252,1,199,95,95,105,110,100,101,120, -250,255 -}; -#endif - -#ifdef LJLIB_MODULE_ffi -#undef LJLIB_MODULE_ffi -static const lua_CFunction lj_lib_cf_ffi[] = { - lj_cf_ffi_cdef, - lj_cf_ffi_new, - lj_cf_ffi_cast, - lj_cf_ffi_typeof, - lj_cf_ffi_istype, - lj_cf_ffi_sizeof, - lj_cf_ffi_alignof, - lj_cf_ffi_offsetof, - lj_cf_ffi_errno, - lj_cf_ffi_string, - lj_cf_ffi_copy, - lj_cf_ffi_fill, - lj_cf_ffi_abi, - lj_cf_ffi_metatype, - lj_cf_ffi_gc, - lj_cf_ffi_load -}; -static const uint8_t lj_lib_init_ffi[] = { -187,62,22,4,99,100,101,102,3,110,101,119,4,99,97,115,116,6,116,121,112,101, -111,102,6,105,115,116,121,112,101,6,115,105,122,101,111,102,7,97,108,105,103, -110,111,102,8,111,102,102,115,101,116,111,102,5,101,114,114,110,111,6,115,116, -114,105,110,103,4,99,111,112,121,4,102,105,108,108,3,97,98,105,252,8,192,250, -8,109,101,116,97,116,121,112,101,252,7,192,250,2,103,99,252,5,192,250,4,108, -111,97,100,252,4,193,67,250,252,3,194,111,115,250,252,2,196,97,114,99,104,250, -255 -}; -#endif - diff --git a/Libs/LuaJIT-2.0.3/src/lj_recdef.h b/Libs/LuaJIT-2.0.3/src/lj_recdef.h deleted file mode 100644 index 2c3c9be..0000000 --- a/Libs/LuaJIT-2.0.3/src/lj_recdef.h +++ /dev/null @@ -1,263 +0,0 @@ -/* This is a generated file. DO NOT EDIT! */ - -static const uint16_t recff_idmap[] = { -0, -0x0100, -0x0200, -0x0300, -0, -0, -0x0400, -0x0500, -0x0600, -0x0700, -0, -0, -0x0800, -0x0900, -0x0a00, -0, -0x0b00, -0x0c00, -0x0d00, -0, -0x0e00, -0x0f00, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0x1000, -0x1100+(IRFPM_FLOOR), -0x1100+(IRFPM_CEIL), -0x1200+(IRFPM_SQRT), -0x1200+(IRFPM_LOG10), -0x1200+(IRFPM_EXP), -0x1200+(IRFPM_SIN), -0x1200+(IRFPM_COS), -0x1200+(IRFPM_TAN), -0x1300+(FF_math_asin), -0x1300+(FF_math_acos), -0x1300+(FF_math_atan), -0x1400+(IRCALL_sinh), -0x1400+(IRCALL_cosh), -0x1400+(IRCALL_tanh), -0, -0x1500, -0x1600, -0x1600, -0x1700, -0x1800, -0x1900, -0, -0x1a00, -0x1b00+(IR_MIN), -0x1b00+(IR_MAX), -0x1c00, -0, -0x1d00+(IR_TOBIT), -0x1d00+(IR_BNOT), -0x1d00+(IR_BSWAP), -0x1e00+(IR_BSHL), -0x1e00+(IR_BSHR), -0x1e00+(IR_BSAR), -0x1e00+(IR_BROL), -0x1e00+(IR_BROR), -0x1f00+(IR_BAND), -0x1f00+(IR_BOR), -0x1f00+(IR_BXOR), -0, -0x2000, -0x2100+(0), -0, -0x2100+(1), -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0x2200, -0, -0x2300, -0x2400, -0, -0, -0, -0, -0x2500+(0), -0x2600+(0), -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0x2500+(GCROOT_IO_OUTPUT), -0x2600+(GCROOT_IO_OUTPUT), -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0x2700+(0), -0x2700+(1), -0x2800+(MM_eq), -0x2800+(MM_len), -0x2800+(MM_lt), -0x2800+(MM_le), -0x2800+(MM_concat), -0x2900, -0x2800+(MM_add), -0x2800+(MM_sub), -0x2800+(MM_mul), -0x2800+(MM_div), -0x2800+(MM_mod), -0x2800+(MM_pow), -0x2800+(MM_unm), -0, -0, -0, -0x2a00+(1), -0x2a00+(0), -0, -0, -0, -0, -0x2b00, -0x2b00, -0x2c00, -0x2d00, -0x2e00+(FF_ffi_sizeof), -0x2e00+(FF_ffi_alignof), -0x2e00+(FF_ffi_offsetof), -0x2f00, -0x3000, -0x3100, -0x3200, -0x3300, -0, -0x3400 -}; - -static const RecordFunc recff_func[] = { -recff_nyi, -recff_c, -recff_assert, -recff_type, -recff_ipairs_aux, -recff_ipairs, -recff_getmetatable, -recff_setmetatable, -recff_rawget, -recff_rawset, -recff_rawequal, -recff_select, -recff_tonumber, -recff_tostring, -recff_pcall, -recff_xpcall, -recff_math_abs, -recff_math_round, -recff_math_unary, -recff_math_atrig, -recff_math_htrig, -recff_math_modf, -recff_math_degrad, -recff_math_log, -recff_math_atan2, -recff_math_pow, -recff_math_ldexp, -recff_math_minmax, -recff_math_random, -recff_bit_unary, -recff_bit_shift, -recff_bit_nary, -recff_string_len, -recff_string_range, -recff_table_getn, -recff_table_insert, -recff_table_remove, -recff_io_write, -recff_io_flush, -recff_cdata_index, -recff_cdata_arith, -recff_cdata_call, -recff_clib_index, -recff_ffi_new, -recff_ffi_typeof, -recff_ffi_istype, -recff_ffi_xof, -recff_ffi_errno, -recff_ffi_string, -recff_ffi_copy, -recff_ffi_fill, -recff_ffi_abi, -recff_ffi_gc -}; - diff --git a/bugsAndChips.cpp b/bugsAndChips.cpp index b90465a..0e6ed56 100644 --- a/bugsAndChips.cpp +++ b/bugsAndChips.cpp @@ -355,33 +355,44 @@ void topicOverrideInit() //InjectData(0x0040C29B, nop, 2); } - -// This function is executed whenever another player is attempting to join our server -void *(__cdecl *playerNew_4DD320)(int playerId, char *incBuffer); -void *__cdecl playerDataJoinHook(int playerId, char *incBuffer) +int (__cdecl *netOnPacketRecvServ)(int playerId, char *packet, int length); +// Validates incoming player data in order to prevent rogue players crashing the server +int __cdecl netOnPacketRecvServ_Hook(int playerId, char *packet, int length) { + if (*packet == 0x20 && length < 0x9A) + { + char test[60]; + sprintf(test,"[UniMod] Wrong player data len detected: 0x%X", length); + conPrintI(test); + // Go away, little bugger + return 0; + } + + packet++; // Check if nickname starts with invalid character - if (incBuffer[0] <= 0x1F) + if (packet[0] <= 0x1F) { - wcscpy((wchar_t*)incBuffer, L"Jack\0"); - conPrintI("[UniMod] Bugged player name detected"); + wcscpy((wchar_t*)packet, L"Jack\0"); + conPrintI("[UniMod] Bugged player name was detected!"); } // Check if player class is invalid - if (incBuffer[0x42] >= 3) + if (packet[0x42] >= 3) { - incBuffer[0x42] = 0; - conPrintI("[UniMod] Bugged player class detected"); + packet[0x42] = 0; + conPrintI("[UniMod] Bugged player class was detected!"); } - // Check if desired player object is invalid - if (incBuffer[0x43] > 0) + // Check if player object requested by client is invalid + if (packet[0x43] > 0) { - incBuffer[0x43] = 0; - conPrintI("[UniMod] Bugged player object detected"); + packet[0x43] = 0; + conPrintI("[UniMod] Bugged player object was detected!"); } + packet--; - return playerNew_4DD320(playerId, incBuffer); + // Carry on + return netOnPacketRecvServ(playerId, packet, length); } void bugsInit() @@ -400,21 +411,23 @@ void bugsInit() InjectJumpTo(0x004E1C8A,&asmDeathBallBugGs); InjectJumpTo(0x004E1BD6,&asmDeathBallBugSh); - InjectJumpTo(0x004C2BC7,&asmConjSummonEnotherCmp); // делаем возможность ПКМ - InjectJumpTo(0x004C2BB6,&asmConjSummonDo); // ставим вместо списка наши 2 прикольные штуки - InjectJumpTo(0x0049179A,&asmConjSummonCreate); - InjectJumpTo(0x004C2ACC,&asmConjSummonDoAll); - InjectJumpTo(0x004C3147,&asmConjSummonDieOrBanish); - InjectJumpTo(0x004C1FA1,&asmConjSummonLoadWnd); - -// InjectJumpTo(0x0052C7CD,&asmFixCastFireball); + bool conjurerSummonCmdImprovements=false; + if (conjurerSummonCmdImprovements) + { + InjectJumpTo(0x004C2BC7,&asmConjSummonEnotherCmp); // делаем возможность ПКМ + InjectJumpTo(0x004C2BB6,&asmConjSummonDo); // ставим вместо списка наши 2 прикольные штуки + InjectJumpTo(0x0049179A,&asmConjSummonCreate); + InjectJumpTo(0x004C2ACC,&asmConjSummonDoAll); + InjectJumpTo(0x004C3147,&asmConjSummonDieOrBanish); + InjectJumpTo(0x004C1FA1,&asmConjSummonLoadWnd); + } - topicOverrideInit(); + //InjectJumpTo(0x0052C7CD,&asmFixCastFireball); - bool checkPlayerJoinData=true; // TODO: convert all similar hardcoded-switches into #defines in a separate file - if (checkPlayerJoinData) + bool filterPlayerJoinData=true; // TODO: convert all similar hardcoded-switches into #defines in a separate file + if (filterPlayerJoinData) { - InjectOffs(0x0051CEB8 + 1, &playerDataJoinHook); + InjectOffs(0x4DEC40 + 1, &netOnPacketRecvServ_Hook); } - ASSIGN(playerNew_4DD320, 0x4DD320); + ASSIGN(netOnPacketRecvServ, 0x51BAD0); } \ No newline at end of file From 606eadf0b0a7c59ba78151fea4dc90994ad86081 Mon Sep 17 00:00:00 2001 From: AngryKirC Date: Sat, 25 Apr 2020 17:22:18 +0400 Subject: [PATCH 4/7] Oops, fix .gitignore --- .gitignore | 2 -- 1 file changed, 2 deletions(-) diff --git a/.gitignore b/.gitignore index ea58726..7862181 100644 --- a/.gitignore +++ b/.gitignore @@ -33,8 +33,6 @@ /UniModNew.opensdf /UniModNew.sdf /*.suo -*.user -/Libs/*.md /ipch /Libs/SDL/SDL2-2.0.8/VisualC/SDL/Win32/Release/ /Libs/SDL/SDL2-2.0.8/VisualC/SDL/Win32/Debug/ From ab58664c92c62f6d99fcba434d41aa8dd0979488 Mon Sep 17 00:00:00 2001 From: AngryKirC Date: Sun, 26 Apr 2020 18:35:18 +0400 Subject: [PATCH 5/7] Added playerOnChat event; modified server netcode --- .gitignore | 1 + admin.cpp | 1 - authManager.cpp | 51 +++++++++++ bugsAndChips.cpp | 1 + net.cpp | 233 ++++++++++++++++------------------------------- player.cpp | 27 ++++++ util.cpp | 2 +- 7 files changed, 161 insertions(+), 155 deletions(-) diff --git a/.gitignore b/.gitignore index 7862181..689ae6d 100644 --- a/.gitignore +++ b/.gitignore @@ -26,6 +26,7 @@ /Libs/lpng151/projects/visualc71/Win32_LIB_Release/ /Libs/luajit.lib /Libs/luasocket/src/*.log +/Libs/luasocket/src/*.tlog /Libs/luasocket/src/*.obj /Libs/luasocket/src/*.lib /Libs/*.lib diff --git a/admin.cpp b/admin.cpp index 91663df..ce02ed0 100644 --- a/admin.cpp +++ b/admin.cpp @@ -1127,7 +1127,6 @@ namespace } return result; } - } extern "C" void adminInit(lua_State *L); extern void authInit(lua_State *L); diff --git a/authManager.cpp b/authManager.cpp index 8492f14..5c719a8 100644 --- a/authManager.cpp +++ b/authManager.cpp @@ -788,4 +788,55 @@ void authCheckDelayed(byte playerIdx, char* pass) notLoggedIn.insert(pair(playerIdx, pass)); if(specialAuthRemote) notLoggedInRemote.push(playerIdx); +} + +// Process //auth tokens both from chat and console. +// If true is returned from this function, the message is filtered out completely. +bool processSpecialAuth(byte playerIdx, char* message) +{ + char *authCmd="//auth "; + int cmdTokenL=0; + int msgLen = strlen(message); + if (strncmp(message, authCmd, strlen(authCmd)) == 0) + cmdTokenL=strlen(authCmd); + + if (playerIdx!=0x1F && authorisedState[playerIdx]>=0 && authorisedState[playerIdx]<4) + { + switch(authorisedState[playerIdx]) + { + case 0: + case 3: + return true; + break; + case 1: + // Тут только логин сейвим + { + char *login = new char[msgLen-cmdTokenL]; + strncpy(login, &message[msgLen+cmdTokenL], msgLen-cmdTokenL); + authorisedLogins[playerIdx]=login; + authorisedState[playerIdx]++; + authSendWelcomeMsg[playerIdx]=-1; + + delete[] login; + return true; + } + break; + case 2: + { + char* pass = new char[msgLen-cmdTokenL]; + strncpy(pass, &message[msgLen+cmdTokenL], msgLen-cmdTokenL); + + // Сюда добавить логику запуска аутентификации по http + + authorisedState[playerIdx]++; + authSendWelcomeMsg[playerIdx]=-1; + authCheckDelayed(playerIdx, pass); + + delete[] pass; + return true; + } + break; + } + } + return false; } \ No newline at end of file diff --git a/bugsAndChips.cpp b/bugsAndChips.cpp index 0e6ed56..c388f14 100644 --- a/bugsAndChips.cpp +++ b/bugsAndChips.cpp @@ -357,6 +357,7 @@ void topicOverrideInit() int (__cdecl *netOnPacketRecvServ)(int playerId, char *packet, int length); // Validates incoming player data in order to prevent rogue players crashing the server +// (this packet always comes singular, in contrast to regular MSG_* packets) int __cdecl netOnPacketRecvServ_Hook(int playerId, char *packet, int length) { if (*packet == 0x20 && length < 0x9A) diff --git a/net.cpp b/net.cpp index b26e9a5..9045d27 100644 --- a/net.cpp +++ b/net.cpp @@ -4,7 +4,7 @@ #include #include -int UnimodVersion=010601;/// 00.06.01 +int UnimodVersion=010602;/// 00.06.02 void (__cdecl *netClientSend) (int PlrN,int Dir,//1 - клиенту void *Buf,int BufSize); @@ -752,8 +752,6 @@ namespace { netSendServ(Buf,Pt-Buf); } - - int netVersionRq(lua_State*L) { lua_settop(L,1); @@ -945,9 +943,12 @@ extern char *(__cdecl *mapGetName)(); } } } +extern int (__cdecl *playerKickByIdx)(int playerIdx, int unknownArg); extern void spellServDoCustom(int SpellArr[5],bool OnSelf,BYTE *MyPlayer,BYTE *MyUc); - extern void netOnClientTryUse(BYTE *Start,BYTE *End,BYTE *MyUc,void *Player); +extern bool processChatMessage(int playerId, char *string, bool teamMsg); +extern bool processSpecialAuth(byte playerIdx, char* message); + extern "C" void __cdecl onNetPacketServer(BYTE *&BufStart,BYTE *E, BYTE *MyPlayer, /// bigUnitStruct BYTE *MyUc)/// Полученые сервером @@ -958,7 +959,73 @@ extern "C" void __cdecl onNetPacketServer(BYTE *&BufStart,BYTE *E, { found=false; BYTE *P=BufStart; - if (*P==0x3F && specialAuthorisation==true) + + if (*P == 0xA8) // MSG_TEXT_MESSAGE + { + void **PP=(void **)(((char*)MyPlayer)+0x2EC); + if (*PP == NULL) continue; // idk + PP=(void**)(((char*)*PP)+0x114); + byte *Pl=(byte*)(*PP); + byte playerIdx = *((byte*)(Pl+0x810)); + + bool longStr = P[3] & 2 == 0; + bool teamMsg = P[3] & 1; + byte length = P[8]; + byte reallen; + char msg[255]; + + // Detect and fix buffer overflows, also convert wide strings to short + if (longStr) + { + reallen = wcsnlen_s((wchar_t*)(P+0xB), 254); + wcstombs(msg, (wchar_t*)(P+0xB), reallen + 1); + msg[254] = 0; + } + else + { + reallen = strnlen_s((char*)P+0xB, 254); + msg[254] = 0; + strcpy_s(msg, reallen + 1, (char*)P+0xB); + } + reallen++; // null-term + + if (length != reallen) + { + // Oops, something went wrong + BufStart = E; + playerKickByIdx(playerIdx, 2); + return; + } + + if (specialAuthorisation) // Authorization packets + { + if (processSpecialAuth(playerIdx, msg)) + { + if (longStr) + BufStart += length * 2 + 0xB; + else + BufStart += length + 0xB; + + found = true; + continue; + } + } + + // Not an auth packet; pass on to Unimod + if (!processChatMessage(playerIdx, msg, teamMsg)) + { + if (longStr) + BufStart += length * 2 + 0xB; + else + BufStart += length + 0xB; + + found = true; + continue; + } + // Pass on to default handler + } + + if (*P==0x3F && specialAuthorisation==true) // MSG_PLAYER_INPUT { void **PP=(void **)(((char*)MyPlayer)+0x2EC); PP=(void**)(((char*)*PP)+0x114); @@ -979,161 +1046,21 @@ extern "C" void __cdecl onNetPacketServer(BYTE *&BufStart,BYTE *E, break; } } - else if(*P==0xA8 && specialAuthorisation==true) + else if(*P==0xBB && specialAuthorisation==true && ((char)P[0x4])>0) // MSG_SERVER_CMD { - - void **PP=(void **)(((char*)MyPlayer)+0x2EC); - PP=(void**)(((char*)*PP)+0x114); - byte *Pl=(byte*)(*PP); - byte playerIdx = *((byte*)(Pl+0x810)); - char *authCmd="//auth "; - int cmdTokenL=0; - if(strncmp((char*)&P[0xB], authCmd, ((BufStart[0x8]>strlen(authCmd))?(strlen(authCmd)):(BufStart[0x8])))==0) - cmdTokenL=strlen(authCmd); - if(playerIdx!=0x1F && authorisedState[playerIdx]>=0 && authorisedState[playerIdx]<4) - { - switch(authorisedState[playerIdx]) - { - case 0: - case 3: - BufStart+=BufStart[0x8]+0xB; - found=true; - break; - case 1: - // Тут только логин сейвим - { - char *login=NULL; - login = new char[P[0x8]-cmdTokenL]; - strncpy(login, (char*)&P[0xB+cmdTokenL], P[0x8]-cmdTokenL); - authorisedLogins[playerIdx]=login; - authorisedState[playerIdx]++; - authSendWelcomeMsg[playerIdx]=-1; - BufStart+=BufStart[0x8]+0xB; - found=true; - login = NULL; - } - break; - case 2: - { - //char *data=NULL; - //data = new char[P[0x8]+1]; - char* pass = new char[P[0x8]-cmdTokenL]; - //memcpy(data, &playerIdx, 1); - //strncpy(&data[1], (char*)&P[0xB], P[0x8]); - strncpy(pass, (char*)&P[0xB+cmdTokenL], P[0x8]-cmdTokenL); - - // Сюда добавить логику запуска аутентификации по http - - // TEMPORARY! - //temp=data; - // TEMPORARY! END - authorisedState[playerIdx]++; - authSendWelcomeMsg[playerIdx]=-1; - authCheckDelayed(playerIdx, pass); - BufStart+=BufStart[0x8]+0xB; - found=true; - //data = NULL; - pass=NULL; - } - break; - /*case 3: - { - BufStart+=BufStart[0x8]+0xB; - - // TEMPORARY! - if(strcmp(&temp[1], "password")==0) - authorisedState[playerIdx]++; - else - authorisedState[playerIdx]-=2; - // TEMPORARY! END - } - break;*/ - } - } - if(cmdTokenL>0 && found==false) - { - BufStart+=BufStart[0x8]+0xB; - found=true; - } - } - else if(*P==0xBB && specialAuthorisation==true && ((char)P[0x4])>0) - { - void **PP=(void **)(((char*)MyPlayer)+0x2EC); PP=(void**)(((char*)*PP)+0x114); byte *Pl=(byte*)(*PP); byte playerIdx = *((byte*)(Pl+0x810)); - char *authCmd=" //auth "; - int cmdTokenL=0; + char *command = new char[BufStart[0x4]]; - wcstombs(command,((wchar_t*)&BufStart[0x5]),BufStart[0x4]); - if(strncmp((char*)command, authCmd, ((BufStart[0x4]>strlen(authCmd))?(strlen(authCmd)):(BufStart[0x4])))==0) - cmdTokenL=strlen(authCmd); - if(playerIdx!=0x1F && authorisedState[playerIdx]>=0 && authorisedState[playerIdx]<4 && cmdTokenL==strlen(authCmd)) - { - switch(authorisedState[playerIdx]) - { - case 0: - case 3: - BufStart+=BufStart[0x4]*2+0x7; - found=true; - break; - case 1: - // Тут только логин сейвим - { - char *login=NULL; - login = new char[P[0x4]-cmdTokenL]; - strncpy(login, (char*)&command[cmdTokenL], P[0x4]-cmdTokenL); - authorisedLogins[playerIdx]=login; - authorisedState[playerIdx]++; - authSendWelcomeMsg[playerIdx]=-1; - BufStart+=BufStart[0x4]*2+0x7; - found=true; - login = NULL; - } - break; - case 2: - { - //char *data=NULL; - //data = new char[P[0x8]+1]; - //char* pass = new char[P[0x8]-cmdTokenL]; - //memcpy(data, &playerIdx, 1); - //strncpy(&data[1], (char*)&P[0xB], P[0x8]); - //strncpy(pass, (char*)&P[0xB+cmdTokenL], P[0x8]-cmdTokenL); - char* pass = new char[P[0x4]-cmdTokenL]; - strncpy(pass, (char*)&command[cmdTokenL], P[0x4]-cmdTokenL); - // Сюда добавить логику запуска аутентификации по http - - // TEMPORARY! - //temp=data; - // TEMPORARY! END - authorisedState[playerIdx]++; - authSendWelcomeMsg[playerIdx]=-1; - authCheckDelayed(playerIdx, pass); - BufStart+=BufStart[0x4]*2+0x7; - found=true; - //data = NULL; - pass=NULL; - } - break; - /*case 3: - { - BufStart+=BufStart[0x8]+0xB; - - // TEMPORARY! - if(strcmp(&temp[1], "password")==0) - authorisedState[playerIdx]++; - else - authorisedState[playerIdx]-=2; - // TEMPORARY! END - } - break;*/ - } - } - if(cmdTokenL>0 && found==false) + wcstombs(command, ((wchar_t*)&BufStart[0x5]), BufStart[0x4]); + + if (processSpecialAuth(playerIdx, command)) { - BufStart+=BufStart[0x4]*2+0x7; - found=true; + BufStart += BufStart[0x4]*2+0x7; + found = true; + continue; } } else if (*P==0xF8)/// это будет первый юнимод-пакет {F8,<длина>, данные} diff --git a/player.cpp b/player.cpp index 2067e58..a8640c2 100644 --- a/player.cpp +++ b/player.cpp @@ -392,6 +392,33 @@ extern "C" int __cdecl playerOnTrySpell(bigUnitStruct *Unit,byte *Uc,spellPacke return 0; } +// Calls Lua handler when any player says something in chat. +// The message can be filtered and will be not visible to anyone else on the server. +bool processChatMessage(int playerId, char *string, bool teamMsg) +{ + bool result = true; + getServerVar("playerOnChat"); + if (lua_isfunction(L, -1)) + { + lua_pushinteger(L, playerId); + lua_pushstring(L, string); + lua_pushinteger(L, teamMsg); + + if (0!=lua_pcall(L, 3, 1, 0)) + { + // I think there needs to be some formatting done in error messages, but I'm too lazy to rewrite just everything + conPrintI(lua_tostring(L,-1)); + } + + if (lua_isboolean(L, -1)) + result = !lua_toboolean(L, -1); + + lua_pop(L, 1); + } + + return result; +} + extern void InjectOffs(DWORD Addr,void *Fn); extern void InjectJumpTo(DWORD Addr,void *Fn); diff --git a/util.cpp b/util.cpp index 57cd282..f241dbd 100644 --- a/util.cpp +++ b/util.cpp @@ -1010,7 +1010,7 @@ namespace void (__cdecl *sub51ADF0)();/// событие проверки скриптов карты по таймауту int getFrameCounterL(lua_State *L) { - lua_pushinteger(L,(int)*frameCounter); + lua_pushinteger(L,(unsigned int)*frameCounter); return 1; } void __cdecl onEachFrame() From ff686c3555cae8cc19f5cde97bb2719917aa1b31 Mon Sep 17 00:00:00 2001 From: AngryKirC Date: Sat, 2 May 2020 17:25:59 +0400 Subject: [PATCH 6/7] fix issue with playerdata bug detection --- bugsAndChips.cpp | 57 +++++++++++++++++++++++++----------------------- 1 file changed, 30 insertions(+), 27 deletions(-) diff --git a/bugsAndChips.cpp b/bugsAndChips.cpp index c388f14..9d75a10 100644 --- a/bugsAndChips.cpp +++ b/bugsAndChips.cpp @@ -360,37 +360,40 @@ int (__cdecl *netOnPacketRecvServ)(int playerId, char *packet, int length); // (this packet always comes singular, in contrast to regular MSG_* packets) int __cdecl netOnPacketRecvServ_Hook(int playerId, char *packet, int length) { - if (*packet == 0x20 && length < 0x9A) + if (*packet == 0x20 ) { - char test[60]; - sprintf(test,"[UniMod] Wrong player data len detected: 0x%X", length); - conPrintI(test); - // Go away, little bugger - return 0; - } - - packet++; - // Check if nickname starts with invalid character - if (packet[0] <= 0x1F) - { - wcscpy((wchar_t*)packet, L"Jack\0"); - conPrintI("[UniMod] Bugged player name was detected!"); - } + if (length < 0x9A) + { + char test[60]; + sprintf(test,"[UniMod] Wrong player data len detected: 0x%X", length); + conPrintI(test); + // Go away, little bugger + return 0; + } + + packet++; + // Check if nickname starts with invalid character + if (packet[0] <= 0x1F) + { + wcscpy((wchar_t*)packet, L"Jack\0"); + conPrintI("[UniMod] Bugged player name was detected!"); + } - // Check if player class is invalid - if (packet[0x42] >= 3) - { - packet[0x42] = 0; - conPrintI("[UniMod] Bugged player class was detected!"); - } + // Check if player class is invalid + if (packet[0x42] >= 3) + { + packet[0x42] = 0; + conPrintI("[UniMod] Bugged player class was detected!"); + } - // Check if player object requested by client is invalid - if (packet[0x43] > 0) - { - packet[0x43] = 0; - conPrintI("[UniMod] Bugged player object was detected!"); + // Check if player object requested by client is invalid + if (packet[0x43] > 0) + { + packet[0x43] = 0; + conPrintI("[UniMod] Bugged player object was detected!"); + } + packet--; } - packet--; // Carry on return netOnPacketRecvServ(playerId, packet, length); From 675338c8dd282e6883b40495143bccbad082cba7 Mon Sep 17 00:00:00 2001 From: AngryKirC Date: Tue, 12 May 2020 20:57:09 +0400 Subject: [PATCH 7/7] Fixed custom authentication. --- authManager.cpp | 45 +++++++++++++++++++++++++++------------------ net.cpp | 8 ++++---- react.cpp | 1 + 3 files changed, 32 insertions(+), 22 deletions(-) diff --git a/authManager.cpp b/authManager.cpp index 5c719a8..2233393 100644 --- a/authManager.cpp +++ b/authManager.cpp @@ -240,6 +240,7 @@ namespace unsigned char lhash[20]; sha.GetHash(lhash); sha.Reset(); + if(authData.find(sha1hash(lhash))!=authData.end() && strncmp(authData[sha1hash(lhash)].login, login, 50)==0 && authData[sha1hash(lhash)].isActive==true) { sha.Update((const unsigned char*)pass, strlen(pass)); @@ -247,6 +248,7 @@ namespace unsigned char phash[20]; sha.GetHash(phash); sha.Reset(); + if(strncmp((char*)authData[sha1hash(lhash)].phash, (char*)phash, 20)==0) return true; } @@ -794,12 +796,22 @@ void authCheckDelayed(byte playerIdx, char* pass) // If true is returned from this function, the message is filtered out completely. bool processSpecialAuth(byte playerIdx, char* message) { - char *authCmd="//auth "; - int cmdTokenL=0; - int msgLen = strlen(message); - if (strncmp(message, authCmd, strlen(authCmd)) == 0) - cmdTokenL=strlen(authCmd); - + char authCmd[] = "//auth "; + char msgUsefulData[255]; + memset(msgUsefulData, 0, 1); + // Trim //auth part + int mlen = strlen(message); + int alen = strlen(authCmd); + int start = 0; + if (strncmp(message, authCmd, alen) == 0) + { + start += alen; + mlen -= start; + } + if (mlen < 0) + mlen = 0; + strncpy(msgUsefulData, &message[start], mlen); + if (playerIdx!=0x1F && authorisedState[playerIdx]>=0 && authorisedState[playerIdx]<4) { switch(authorisedState[playerIdx]) @@ -810,29 +822,26 @@ bool processSpecialAuth(byte playerIdx, char* message) break; case 1: // Тут только логин сейвим - { - char *login = new char[msgLen-cmdTokenL]; - strncpy(login, &message[msgLen+cmdTokenL], msgLen-cmdTokenL); - authorisedLogins[playerIdx]=login; + { + char* tmp = new char[255]; + strcpy_s(tmp, 255, msgUsefulData); + // Copy string to heap allocated ptr; it will be freed later in updateAuthDBProcess() -> authentificate() + + authorisedLogins[playerIdx] = tmp; authorisedState[playerIdx]++; - authSendWelcomeMsg[playerIdx]=-1; + authSendWelcomeMsg[playerIdx] = -1; - delete[] login; return true; } break; case 2: { - char* pass = new char[msgLen-cmdTokenL]; - strncpy(pass, &message[msgLen+cmdTokenL], msgLen-cmdTokenL); - // Сюда добавить логику запуска аутентификации по http authorisedState[playerIdx]++; - authSendWelcomeMsg[playerIdx]=-1; - authCheckDelayed(playerIdx, pass); + authSendWelcomeMsg[playerIdx] = -1; + authCheckDelayed(playerIdx, msgUsefulData); - delete[] pass; return true; } break; diff --git a/net.cpp b/net.cpp index 9045d27..72ff46f 100644 --- a/net.cpp +++ b/net.cpp @@ -955,7 +955,7 @@ extern "C" void __cdecl onNetPacketServer(BYTE *&BufStart,BYTE *E, { bool found=true; // ВНИМАНИЕ! Для всех ВЫФИЛЬТРОВЫВАЕМЫХ пакетов - обязательно ставьте found=true! Иначе не будет производиться обработка других пакетов в ЭТОМ же фрейме! - while(found) + while (found) { found=false; BYTE *P=BufStart; @@ -1025,7 +1025,7 @@ extern "C" void __cdecl onNetPacketServer(BYTE *&BufStart,BYTE *E, // Pass on to default handler } - if (*P==0x3F && specialAuthorisation==true) // MSG_PLAYER_INPUT + if (*P == 0x3F && specialAuthorisation == true) // MSG_PLAYER_INPUT { void **PP=(void **)(((char*)MyPlayer)+0x2EC); PP=(void**)(((char*)*PP)+0x114); @@ -1053,10 +1053,10 @@ extern "C" void __cdecl onNetPacketServer(BYTE *&BufStart,BYTE *E, byte *Pl=(byte*)(*PP); byte playerIdx = *((byte*)(Pl+0x810)); - char *command = new char[BufStart[0x4]]; + char command[255]; // no heap alloc :| wcstombs(command, ((wchar_t*)&BufStart[0x5]), BufStart[0x4]); - if (processSpecialAuth(playerIdx, command)) + if (processSpecialAuth(playerIdx, command + 1)) { BufStart += BufStart[0x4]*2+0x7; found = true; diff --git a/react.cpp b/react.cpp index 06a7d69..5454a18 100644 --- a/react.cpp +++ b/react.cpp @@ -533,6 +533,7 @@ namespace */ return; } + int unitSetUpdateL(lua_State*L) { return unitSetAnyFnL(L,0x2E8,&updateFn);