├── .bzr-builddeb
└── default.conf
├── .bzrignore
├── .github
├── ISSUE_TEMPLATE
│ └── bug_report.md
├── dependabot.yml
└── workflows
│ └── macos.yml
├── .gitignore
├── .gitmodules
├── .travis.yml
├── CMakeLists.txt
├── CMakeSettings.json
├── COPYING
├── COPYING-3rd
├── README.md
├── StormLib
├── .gitignore
├── CMakeLists.txt
├── Info.plist
├── LICENSE
├── Makefile.linux
├── Makefile.mac
├── PostBuild.bat
├── Premake5.lua
├── Publish.bat
├── Publish_beta.bat
├── README
├── README.md
├── StormLib.bat
├── StormLib.kdev4
├── StormLib.xcodeproj
│ └── project.pbxproj
├── StormLib_vs08.sln
├── StormLib_vs08.vcproj
├── StormLib_vs08_dll.vcproj
├── StormLib_vs08_test.vcproj
├── StormLib_vs15.sln
├── StormLib_vs15.vcxproj
├── StormLib_vs15.vcxproj.filters
├── StormLib_vs15_dll.vcxproj
├── StormLib_vs15_dll.vcxproj.filters
├── StormLib_vs15_test.vcxproj
├── StormLib_vs15_test.vcxproj.filters
├── StormLib_vs17.sln
├── StormLib_vs17.vcxproj
├── StormLib_vs17.vcxproj.filters
├── StormLib_vs17_dll.vcxproj
├── StormLib_vs17_dll.vcxproj.filters
├── StormLib_vs17_test.vcxproj
├── StormLib_vs17_test.vcxproj.filters
├── StormLib_vs19.sln
├── StormLib_vs19.vcxproj
├── StormLib_vs19.vcxproj.filters
├── StormLib_vs19_dll.vcxproj
├── StormLib_vs19_dll.vcxproj.filters
├── StormLib_vs19_test.vcxproj
├── StormLib_vs19_test.vcxproj.filters
├── doc
│ ├── History.txt
│ ├── The MoPaQ File Format 0.9.txt
│ ├── The MoPaQ File Format 1.0.txt
│ ├── d3-authenticationcode
│ │ ├── d3-authenticationcode-deDE.txt
│ │ ├── d3-authenticationcode-enGB.txt
│ │ ├── d3-authenticationcode-enSG.txt
│ │ ├── d3-authenticationcode-enUS.txt
│ │ ├── d3-authenticationcode-esES.txt
│ │ ├── d3-authenticationcode-esMX.txt
│ │ ├── d3-authenticationcode-frFR.txt
│ │ ├── d3-authenticationcode-itIT.txt
│ │ ├── d3-authenticationcode-koKR.txt
│ │ ├── d3-authenticationcode-plPL.txt
│ │ ├── d3-authenticationcode-ptBR.txt
│ │ └── d3-authenticationcode-zhTW.txt
│ ├── hots-authenticationcode
│ │ └── hots-authenticationcode-bgdl.txt
│ └── sc2-authenticationcode
│ │ ├── sc2-authenticationcode-deDE.txt
│ │ ├── sc2-authenticationcode-enGB.txt
│ │ ├── sc2-authenticationcode-enUS.txt
│ │ ├── sc2-authenticationcode-esES.txt
│ │ ├── sc2-authenticationcode-esMX.txt
│ │ ├── sc2-authenticationcode-frFR.txt
│ │ ├── sc2-authenticationcode-itIT.txt
│ │ ├── sc2-authenticationcode-koKR.txt
│ │ ├── sc2-authenticationcode-plPL.txt
│ │ ├── sc2-authenticationcode-ptBR.txt
│ │ ├── sc2-authenticationcode-ruRU.txt
│ │ └── sc2-authenticationcode-zhTW.txt
├── make-msvc.bat
├── make.bat
├── makefile.w32
├── sources
├── src
│ ├── DllMain.c
│ ├── DllMain.def
│ ├── DllMain.rc
│ ├── FileStream.cpp
│ ├── FileStream.h
│ ├── SBaseCommon.cpp
│ ├── SBaseDumpData.cpp
│ ├── SBaseFileTable.cpp
│ ├── SBaseSubTypes.cpp
│ ├── SCompression.cpp
│ ├── SFileAddFile.cpp
│ ├── SFileAttributes.cpp
│ ├── SFileCompactArchive.cpp
│ ├── SFileCreateArchive.cpp
│ ├── SFileExtractFile.cpp
│ ├── SFileFindFile.cpp
│ ├── SFileGetFileInfo.cpp
│ ├── SFileListFile.cpp
│ ├── SFileOpenArchive.cpp
│ ├── SFileOpenFileEx.cpp
│ ├── SFilePatchArchives.cpp
│ ├── SFileReadFile.cpp
│ ├── SFileVerify.cpp
│ ├── StormCommon.h
│ ├── StormLib.exp
│ ├── StormLib.h
│ ├── StormPort.h
│ ├── adpcm
│ │ ├── adpcm.cpp
│ │ └── adpcm.h
│ ├── bzip2
│ │ ├── blocksort.c
│ │ ├── bzlib.c
│ │ ├── bzlib.h
│ │ ├── bzlib_private.h
│ │ ├── compress.c
│ │ ├── crctable.c
│ │ ├── decompress.c
│ │ ├── huffman.c
│ │ └── randtable.c
│ ├── huffman
│ │ ├── huff.cpp
│ │ └── huff.h
│ ├── jenkins
│ │ ├── lookup.h
│ │ └── lookup3.c
│ ├── libtomcrypt
│ │ └── src
│ │ │ ├── hashes
│ │ │ ├── hash_memory.c
│ │ │ ├── md5.c
│ │ │ └── sha1.c
│ │ │ ├── headers
│ │ │ ├── tomcrypt.h
│ │ │ ├── tomcrypt_argchk.h
│ │ │ ├── tomcrypt_cfg.h
│ │ │ ├── tomcrypt_cipher.h
│ │ │ ├── tomcrypt_custom.h
│ │ │ ├── tomcrypt_hash.h
│ │ │ ├── tomcrypt_mac.h
│ │ │ ├── tomcrypt_macros.h
│ │ │ ├── tomcrypt_math.h
│ │ │ ├── tomcrypt_misc.h
│ │ │ ├── tomcrypt_pk.h
│ │ │ ├── tomcrypt_pkcs.h
│ │ │ └── tomcrypt_prng.h
│ │ │ ├── math
│ │ │ ├── ltm_desc.c
│ │ │ ├── multi.c
│ │ │ └── rand_prime.c
│ │ │ ├── misc
│ │ │ ├── base64_decode.c
│ │ │ ├── crypt_argchk.c
│ │ │ ├── crypt_find_hash.c
│ │ │ ├── crypt_find_prng.c
│ │ │ ├── crypt_hash_descriptor.c
│ │ │ ├── crypt_hash_is_valid.c
│ │ │ ├── crypt_libc.c
│ │ │ ├── crypt_ltc_mp_descriptor.c
│ │ │ ├── crypt_prng_descriptor.c
│ │ │ ├── crypt_prng_is_valid.c
│ │ │ ├── crypt_register_hash.c
│ │ │ ├── crypt_register_prng.c
│ │ │ └── zeromem.c
│ │ │ └── pk
│ │ │ ├── asn1
│ │ │ ├── der_decode_bit_string.c
│ │ │ ├── der_decode_boolean.c
│ │ │ ├── der_decode_choice.c
│ │ │ ├── der_decode_ia5_string.c
│ │ │ ├── der_decode_integer.c
│ │ │ ├── der_decode_object_identifier.c
│ │ │ ├── der_decode_octet_string.c
│ │ │ ├── der_decode_printable_string.c
│ │ │ ├── der_decode_sequence_ex.c
│ │ │ ├── der_decode_sequence_flexi.c
│ │ │ ├── der_decode_sequence_multi.c
│ │ │ ├── der_decode_short_integer.c
│ │ │ ├── der_decode_utctime.c
│ │ │ ├── der_decode_utf8_string.c
│ │ │ ├── der_encode_bit_string.c
│ │ │ ├── der_encode_boolean.c
│ │ │ ├── der_encode_ia5_string.c
│ │ │ ├── der_encode_integer.c
│ │ │ ├── der_encode_object_identifier.c
│ │ │ ├── der_encode_octet_string.c
│ │ │ ├── der_encode_printable_string.c
│ │ │ ├── der_encode_sequence_ex.c
│ │ │ ├── der_encode_sequence_multi.c
│ │ │ ├── der_encode_set.c
│ │ │ ├── der_encode_setof.c
│ │ │ ├── der_encode_short_integer.c
│ │ │ ├── der_encode_utctime.c
│ │ │ ├── der_encode_utf8_string.c
│ │ │ ├── der_length_bit_string.c
│ │ │ ├── der_length_boolean.c
│ │ │ ├── der_length_ia5_string.c
│ │ │ ├── der_length_integer.c
│ │ │ ├── der_length_object_identifier.c
│ │ │ ├── der_length_octet_string.c
│ │ │ ├── der_length_printable_string.c
│ │ │ ├── der_length_sequence.c
│ │ │ ├── der_length_short_integer.c
│ │ │ ├── der_length_utctime.c
│ │ │ ├── der_length_utf8_string.c
│ │ │ └── der_sequence_free.c
│ │ │ ├── ecc
│ │ │ ├── ltc_ecc_map.c
│ │ │ ├── ltc_ecc_mul2add.c
│ │ │ ├── ltc_ecc_mulmod.c
│ │ │ ├── ltc_ecc_points.c
│ │ │ ├── ltc_ecc_projective_add_point.c
│ │ │ └── ltc_ecc_projective_dbl_point.c
│ │ │ ├── pkcs1
│ │ │ ├── pkcs_1_mgf1.c
│ │ │ ├── pkcs_1_oaep_decode.c
│ │ │ ├── pkcs_1_pss_decode.c
│ │ │ ├── pkcs_1_pss_encode.c
│ │ │ ├── pkcs_1_v1_5_decode.c
│ │ │ └── pkcs_1_v1_5_encode.c
│ │ │ └── rsa
│ │ │ ├── rsa_exptmod.c
│ │ │ ├── rsa_free.c
│ │ │ ├── rsa_import.c
│ │ │ ├── rsa_make_key.c
│ │ │ ├── rsa_sign_hash.c
│ │ │ ├── rsa_verify_hash.c
│ │ │ └── rsa_verify_simple.c
│ ├── libtommath
│ │ ├── bn_fast_mp_invmod.c
│ │ ├── bn_fast_mp_montgomery_reduce.c
│ │ ├── bn_fast_s_mp_mul_digs.c
│ │ ├── bn_fast_s_mp_mul_high_digs.c
│ │ ├── bn_fast_s_mp_sqr.c
│ │ ├── bn_mp_2expt.c
│ │ ├── bn_mp_abs.c
│ │ ├── bn_mp_add.c
│ │ ├── bn_mp_add_d.c
│ │ ├── bn_mp_addmod.c
│ │ ├── bn_mp_and.c
│ │ ├── bn_mp_clamp.c
│ │ ├── bn_mp_clear.c
│ │ ├── bn_mp_clear_multi.c
│ │ ├── bn_mp_cmp.c
│ │ ├── bn_mp_cmp_d.c
│ │ ├── bn_mp_cmp_mag.c
│ │ ├── bn_mp_cnt_lsb.c
│ │ ├── bn_mp_copy.c
│ │ ├── bn_mp_count_bits.c
│ │ ├── bn_mp_div.c
│ │ ├── bn_mp_div_2.c
│ │ ├── bn_mp_div_2d.c
│ │ ├── bn_mp_div_3.c
│ │ ├── bn_mp_div_d.c
│ │ ├── bn_mp_dr_is_modulus.c
│ │ ├── bn_mp_dr_reduce.c
│ │ ├── bn_mp_dr_setup.c
│ │ ├── bn_mp_exch.c
│ │ ├── bn_mp_expt_d.c
│ │ ├── bn_mp_exptmod.c
│ │ ├── bn_mp_exptmod_fast.c
│ │ ├── bn_mp_exteuclid.c
│ │ ├── bn_mp_fread.c
│ │ ├── bn_mp_fwrite.c
│ │ ├── bn_mp_gcd.c
│ │ ├── bn_mp_get_int.c
│ │ ├── bn_mp_grow.c
│ │ ├── bn_mp_init.c
│ │ ├── bn_mp_init_copy.c
│ │ ├── bn_mp_init_multi.c
│ │ ├── bn_mp_init_set.c
│ │ ├── bn_mp_init_set_int.c
│ │ ├── bn_mp_init_size.c
│ │ ├── bn_mp_invmod.c
│ │ ├── bn_mp_invmod_slow.c
│ │ ├── bn_mp_is_square.c
│ │ ├── bn_mp_jacobi.c
│ │ ├── bn_mp_karatsuba_mul.c
│ │ ├── bn_mp_karatsuba_sqr.c
│ │ ├── bn_mp_lcm.c
│ │ ├── bn_mp_lshd.c
│ │ ├── bn_mp_mod.c
│ │ ├── bn_mp_mod_2d.c
│ │ ├── bn_mp_mod_d.c
│ │ ├── bn_mp_montgomery_calc_normalization.c
│ │ ├── bn_mp_montgomery_reduce.c
│ │ ├── bn_mp_montgomery_setup.c
│ │ ├── bn_mp_mul.c
│ │ ├── bn_mp_mul_2.c
│ │ ├── bn_mp_mul_2d.c
│ │ ├── bn_mp_mul_d.c
│ │ ├── bn_mp_mulmod.c
│ │ ├── bn_mp_n_root.c
│ │ ├── bn_mp_neg.c
│ │ ├── bn_mp_or.c
│ │ ├── bn_mp_prime_fermat.c
│ │ ├── bn_mp_prime_is_divisible.c
│ │ ├── bn_mp_prime_is_prime.c
│ │ ├── bn_mp_prime_miller_rabin.c
│ │ ├── bn_mp_prime_next_prime.c
│ │ ├── bn_mp_prime_rabin_miller_trials.c
│ │ ├── bn_mp_prime_random_ex.c
│ │ ├── bn_mp_radix_size.c
│ │ ├── bn_mp_radix_smap.c
│ │ ├── bn_mp_rand.c
│ │ ├── bn_mp_read_radix.c
│ │ ├── bn_mp_read_signed_bin.c
│ │ ├── bn_mp_read_unsigned_bin.c
│ │ ├── bn_mp_reduce.c
│ │ ├── bn_mp_reduce_2k.c
│ │ ├── bn_mp_reduce_2k_l.c
│ │ ├── bn_mp_reduce_2k_setup.c
│ │ ├── bn_mp_reduce_2k_setup_l.c
│ │ ├── bn_mp_reduce_is_2k.c
│ │ ├── bn_mp_reduce_is_2k_l.c
│ │ ├── bn_mp_reduce_setup.c
│ │ ├── bn_mp_rshd.c
│ │ ├── bn_mp_set.c
│ │ ├── bn_mp_set_int.c
│ │ ├── bn_mp_shrink.c
│ │ ├── bn_mp_signed_bin_size.c
│ │ ├── bn_mp_sqr.c
│ │ ├── bn_mp_sqrmod.c
│ │ ├── bn_mp_sqrt.c
│ │ ├── bn_mp_sub.c
│ │ ├── bn_mp_sub_d.c
│ │ ├── bn_mp_submod.c
│ │ ├── bn_mp_to_signed_bin.c
│ │ ├── bn_mp_to_signed_bin_n.c
│ │ ├── bn_mp_to_unsigned_bin.c
│ │ ├── bn_mp_to_unsigned_bin_n.c
│ │ ├── bn_mp_toom_mul.c
│ │ ├── bn_mp_toom_sqr.c
│ │ ├── bn_mp_toradix.c
│ │ ├── bn_mp_toradix_n.c
│ │ ├── bn_mp_unsigned_bin_size.c
│ │ ├── bn_mp_xor.c
│ │ ├── bn_mp_zero.c
│ │ ├── bn_prime_tab.c
│ │ ├── bn_reverse.c
│ │ ├── bn_s_mp_add.c
│ │ ├── bn_s_mp_exptmod.c
│ │ ├── bn_s_mp_mul_digs.c
│ │ ├── bn_s_mp_mul_high_digs.c
│ │ ├── bn_s_mp_sqr.c
│ │ ├── bn_s_mp_sub.c
│ │ ├── bncore.c
│ │ ├── tommath.h
│ │ ├── tommath_class.h
│ │ └── tommath_superclass.h
│ ├── lzma
│ │ ├── C
│ │ │ ├── LzFind.c
│ │ │ ├── LzFind.h
│ │ │ ├── LzFindMt.c
│ │ │ ├── LzFindMt.h
│ │ │ ├── LzHash.h
│ │ │ ├── LzmaDec.c
│ │ │ ├── LzmaDec.h
│ │ │ ├── LzmaEnc.c
│ │ │ ├── LzmaEnc.h
│ │ │ ├── Threads.c
│ │ │ ├── Threads.h
│ │ │ └── Types.h
│ │ └── info.txt
│ ├── pklib
│ │ ├── crc32.c
│ │ ├── explode.c
│ │ ├── implode.c
│ │ └── pklib.h
│ ├── resource.h
│ ├── sparse
│ │ ├── sparse.cpp
│ │ └── sparse.h
│ ├── wdk
│ │ ├── sources-cpp.cpp
│ │ ├── sources-wdk-bzip2.c
│ │ ├── sources-wdk-ltc.c
│ │ ├── sources-wdk-lzma.c
│ │ ├── sources-wdk-misc.c
│ │ ├── sources-wdk-tomcrypt.c
│ │ ├── sources-wdk-tommath.c
│ │ └── sources-wdk-zlib.c
│ └── zlib
│ │ ├── adler32.c
│ │ ├── compress.c
│ │ ├── compress_zlib.c
│ │ ├── crc32.c
│ │ ├── crc32.h
│ │ ├── deflate.c
│ │ ├── deflate.h
│ │ ├── gzguts.h
│ │ ├── inffast.c
│ │ ├── inffast.h
│ │ ├── inffixed.h
│ │ ├── inflate.c
│ │ ├── inflate.h
│ │ ├── inftrees.c
│ │ ├── inftrees.h
│ │ ├── trees.c
│ │ ├── trees.h
│ │ ├── zconf.h
│ │ ├── zlib.h
│ │ ├── zutil.c
│ │ └── zutil.h
├── storm_dll
│ ├── Storm_dll.sln
│ ├── Storm_dll.vcproj
│ ├── storm.lib
│ ├── storm_dll.cpp
│ ├── storm_dll.def
│ ├── storm_dll.h
│ ├── storm_test.cpp
│ └── storm_test_vs08.vcproj
└── test
│ ├── Readme.txt
│ ├── StormTest.cpp
│ └── TLogHelper.cpp
├── appveyor.yml
├── campaigns
├── human-exp
│ ├── levelx01h_c.sms
│ ├── levelx02h_c.sms
│ ├── levelx03h_c.sms
│ ├── levelx04h_c.sms
│ ├── levelx05h_c.sms
│ ├── levelx06h_c.sms
│ ├── levelx07h_c.sms
│ ├── levelx08h_c.sms
│ ├── levelx09h_c.sms
│ ├── levelx10h_c.sms
│ ├── levelx11h_c.sms
│ └── levelx12h_c.sms
├── human
│ ├── level01h_c.sms
│ ├── level02h_c.sms
│ ├── level03h_c.sms
│ ├── level04h_c.sms
│ ├── level05h_c.sms
│ ├── level06h_c.sms
│ ├── level07h_c.sms
│ ├── level08h_c.sms
│ ├── level09h_c.sms
│ ├── level10h_c.sms
│ ├── level11h_c.sms
│ ├── level12h_c.sms
│ ├── level13h_c.sms
│ └── level14h_c.sms
├── orc-exp
│ ├── levelx01o_c.sms
│ ├── levelx02o_c.sms
│ ├── levelx03o_c.sms
│ ├── levelx04o_c.sms
│ ├── levelx05o_c.sms
│ ├── levelx06o_c.sms
│ ├── levelx07o_c.sms
│ ├── levelx08o_c.sms
│ ├── levelx09o_c.sms
│ ├── levelx10o_c.sms
│ ├── levelx11o_c.sms
│ └── levelx12o_c.sms
└── orc
│ ├── level01o_c.sms
│ ├── level02o_c.sms
│ ├── level03o_c.sms
│ ├── level04o_c.sms
│ ├── level05o_c.sms
│ ├── level06o_c.sms
│ ├── level07o_c.sms
│ ├── level08o_c.sms
│ ├── level09o_c.sms
│ ├── level10o_c.sms
│ ├── level11o_c.sms
│ ├── level12o_c.sms
│ ├── level13o_c.sms
│ └── level14o_c.sms
├── cmake
└── modules
│ ├── FindMakeNSIS.cmake
│ ├── FindStormLib.cmake
│ └── FindStratagus.cmake
├── cmake_uninstall.cmake.in
├── contrib
├── 6x12_espruino.png
├── black_title.png
├── cross.png
├── food.png
├── health.png
├── health2.png
├── mana.png
├── mana2.png
├── ore,stone,coal.png
├── red_cross.png
├── score.png
└── workers.png
├── debian
├── changelog
├── compat
├── control
├── copyright
├── docs
├── manpages
├── menu
├── po
│ ├── POTFILES.in
│ └── templates.pot
├── postinst
├── postrm
├── rules
└── source
│ └── format
├── doc
├── changelog
├── pud-specs.txt
├── pudconvert.6
├── wargus.6
└── wartool.6
├── endian.h
├── ico_alt.svg
├── mac
├── Info.plist
└── bundle.sh
├── maps
├── fl
│ ├── (6)canyon-way.smp
│ ├── (6)canyon-way.sms
│ ├── (8)rockfort-arena.png
│ ├── (8)rockfort-arena.smp
│ └── (8)rockfort-arena.sms
├── ftm
│ ├── (2)forgotten-forest.png
│ ├── (2)forgotten-forest.smp
│ ├── (2)forgotten-forest.sms
│ ├── (2)less-than-three.smp
│ ├── (2)less-than-three.sms
│ ├── (2)mushroom-panic.png
│ ├── (2)mushroom-panic.smp
│ ├── (2)mushroom-panic.sms
│ ├── (2)nicks-duel.png
│ ├── (2)nicks-duel.smp
│ ├── (2)nicks-duel.sms
│ ├── (2)one-way-through.png
│ ├── (2)one-way-through.smp
│ ├── (2)one-way-through.sms
│ ├── (4)beethoven-day.png
│ ├── (4)beethoven-day.smp
│ ├── (4)beethoven-day.sms
│ ├── (4)coastal-crusade.smp
│ ├── (4)coastal-crusade.sms
│ ├── (4)river-crossing.png
│ ├── (4)river-crossing.smp
│ ├── (4)river-crossing.sms
│ ├── (4)rockfort-arena.png
│ ├── (4)rockfort-arena.smp
│ ├── (4)rockfort-arena.sms
│ ├── (4)winter-bloodbath.png
│ ├── (4)winter-bloodbath.smp
│ ├── (4)winter-bloodbath.sms
│ ├── (5)black-flood.png
│ ├── (5)black-flood.smp
│ ├── (5)black-flood.sms
│ ├── (8)darius.png
│ ├── (8)darius.smp
│ └── (8)darius.sms
├── king
│ ├── (4)reticle.png
│ ├── (4)reticle.smp
│ ├── (4)reticle.sms
│ ├── (4)tournament-forest.png
│ ├── (4)tournament-forest.smp
│ └── (4)tournament-forest.sms
└── skirmish
│ ├── multiplayer
│ ├── (2)timeless-isle.smp.gz
│ ├── (2)timeless-isle.sms.gz
│ ├── (4)central-park.smp.gz
│ ├── (4)central-park.sms.gz
│ ├── (4)central-park.txt
│ ├── (4)just-land.png
│ ├── (4)just-land.smp
│ ├── (4)just-land.sms
│ ├── (4)lake-in-the-middle.smp.gz
│ ├── (4)lake-in-the-middle.sms.gz
│ ├── (4)lake-in-the-middle.txt
│ ├── (6)many-ways-to-rome.bmp
│ ├── (6)many-ways-to-rome.smp.gz
│ ├── (6)many-ways-to-rome.sms.gz
│ ├── (7)socotra.png
│ ├── (7)socotra.smp
│ ├── (7)socotra.sms
│ ├── (8)farscape2006.png
│ ├── (8)farscape2006.pud
│ ├── (8)farscape2006.smp.gz
│ ├── (8)farscape2006.sms.gz
│ ├── (8)farscape2008.smp.gz
│ ├── (8)farscape2008.sms.gz
│ └── (8)farscape2008.txt
│ └── singleplayer
│ ├── (2)blick-nach-oben.smp.gz
│ ├── (2)blick-nach-oben.sms.gz
│ ├── (2)blick-nach-oben.txt
│ ├── (2)east-west-conflict.bmp
│ ├── (2)east-west-conflict.smp.gz
│ ├── (2)east-west-conflict.sms.gz
│ ├── (2)east-west-conflict.txt
│ ├── (2)king-in-stone.bmp
│ ├── (2)king-in-stone.smp.gz
│ ├── (2)king-in-stone.sms.gz
│ ├── (2)no-mans-land.bmp
│ ├── (2)no-mans-land.smp.gz
│ ├── (2)no-mans-land.sms.gz
│ ├── (2)nord-sued-konflikt.smp.gz
│ ├── (2)nord-sued-konflikt.sms.gz
│ ├── (2)nord-sued-konflikt.txt
│ ├── (2)nordische-seenplatte.smp.gz
│ ├── (2)nordische-seenplatte.sms.gz
│ ├── (2)nordische-seenplatte.txt
│ ├── (2)oily-wars.smp.gz
│ ├── (2)oily-wars.sms.gz
│ ├── (2)the-right-strategy.bmp
│ ├── (2)the-right-strategy.smp.gz
│ ├── (2)the-right-strategy.sms.gz
│ ├── (2)zeit-fuer-entscheidungen.smp.gz
│ ├── (2)zeit-fuer-entscheidungen.sms.gz
│ ├── (2)zeit-fuer-entscheidungen.txt
│ ├── (3)around-the-sea.bmp
│ ├── (3)calculate.bmp
│ ├── (3)calculate.smp.gz
│ ├── (3)calculate.sms.gz
│ ├── (3)calculate.txt
│ ├── (3)frosty-rescue.smp.gz
│ ├── (3)frosty-rescue.sms.gz
│ ├── (3)frosty-rescue.txt
│ ├── (3)little-ambush.pud.gz
│ ├── (3)little-ambush.txt
│ ├── (3)man-on-the-moon.bmp
│ ├── (3)man-on-the-moon.smp.gz
│ ├── (3)man-on-the-moon.sms.gz
│ ├── (3)no-mans-land.smp.gz
│ ├── (3)no-mans-land.sms.gz
│ ├── (3)no-mans-land.txt
│ ├── (3)one-two-three.smp.gz
│ ├── (3)one-two-three.sms.gz
│ ├── (3)one-two-three.txt
│ ├── (3)sea-wars.smp.gz
│ ├── (3)sea-wars.sms.gz
│ ├── (3)three-frontiers.smp.gz
│ ├── (3)three-frontiers.sms.gz
│ ├── (4)4-corners.pud.gz
│ ├── (4)4-corners.txt
│ ├── (4)4-isl.pud.gz
│ ├── (4)4-isl.txt
│ ├── (4)arctic-goldrush.bmp
│ ├── (4)arctic-goldrush.smp.gz
│ ├── (4)arctic-goldrush.sms.gz
│ ├── (4)chop-the-trees.pud.gz
│ ├── (4)chop-the-trees.txt
│ ├── (4)circle-hill.bmp
│ ├── (4)circle-hill.smp.gz
│ ├── (4)circle-hill.sms.gz
│ ├── (4)criss_cross.pud.gz
│ ├── (4)criss_cross2.pud.gz
│ ├── (4)criss_cross2.txt
│ ├── (4)east-lakes.bmp
│ ├── (4)east-lakes.txt
│ ├── (4)green-hell.smp.gz
│ ├── (4)green-hell.sms.gz
│ ├── (4)green-hell.txt
│ ├── (4)holy-forest.bmp
│ ├── (4)holy-forest.smp.gz
│ ├── (4)holy-forest.sms.gz
│ ├── (4)little-island.smp.gz
│ ├── (4)little-island.sms.gz
│ ├── (4)little-island.txt
│ ├── (4)look-around.smp.gz
│ ├── (4)look-around.sms.gz
│ ├── (4)pathfinders.bmp
│ ├── (4)pathfinders.smp.gz
│ ├── (4)pathfinders.sms.gz
│ ├── (4)scandinavia.pud.gz
│ ├── (4)scandinavia.txt
│ ├── (4)smile.bmp
│ ├── (4)smile.smp.gz
│ ├── (4)smile.sms.gz
│ ├── (4)smile.txt
│ ├── (4)think-like-your-enemy.bmp
│ ├── (4)think-like-your-enemy.txt
│ ├── (4)tournament-continent.bmp
│ ├── (4)tournament-continent.smp.gz
│ ├── (4)tournament-continent.sms.gz
│ ├── (4)tournament-forest.bmp
│ ├── (4)tournament-forest.smp.gz
│ ├── (4)tournament-forest.sms.gz
│ ├── (4)tournament-islands.bmp
│ ├── (4)tournament-islands.smp.gz
│ ├── (4)tournament-islands.sms.gz
│ ├── (4)what-can-you-do.bmp
│ ├── (4)what-can-you-do.smp.gz
│ ├── (4)what-can-you-do.sms.gz
│ ├── (4)what-can-you-do.txt
│ ├── (4)woody-islands.bmp
│ ├── (4)woody-islands.smp.gz
│ ├── (4)woody-islands.sms.gz
│ ├── (4)you-have-to-look-around.bmp
│ ├── (4)you-have-to-look-around.smp.gz
│ ├── (4)you-have-to-look-around.sms.gz
│ ├── (4)you-have-to-look-around.txt
│ ├── (5)diablospiral.pud.gz
│ ├── (5)diablospiral.txt
│ ├── (5)many-ways-to-beat.bmp
│ ├── (5)many-ways-to-beat.smp.gz
│ ├── (5)many-ways-to-beat.sms.gz
│ ├── (5)many-ways-to-beat.txt
│ ├── (5)speed-is-the-key.bmp
│ ├── (5)speed-is-the-key.smp.gz
│ ├── (5)speed-is-the-key.sms.gz
│ ├── (5)the-pentagon.bmp
│ ├── (5)the-pentagon.smp.gz
│ ├── (5)the-pentagon.sms.gz
│ ├── (5)the-pentagon.txt
│ ├── (5)venedig.bmp
│ ├── (5)venedig.smp.gz
│ ├── (5)venedig.sms.gz
│ ├── (5)venedig.txt
│ ├── (6)all-against-the-floods.bmp
│ ├── (6)all-against-the-floods.smp.gz
│ ├── (6)all-against-the-floods.sms.gz
│ ├── (6)all-against-the-floods.txt
│ ├── (6)can-you-swim.bmp
│ ├── (6)can-you-swim.smp.gz
│ ├── (6)can-you-swim.sms.gz
│ ├── (6)different-ways.bmp
│ ├── (6)different-ways.smp.gz
│ ├── (6)different-ways.sms.gz
│ ├── (7)many-frontiers.bmp
│ ├── (7)many-frontiers.smp.gz
│ ├── (7)many-frontiers.sms.gz
│ ├── (8)altar-in-the-middle.pud.gz
│ ├── (8)altar-in-the-middle.txt
│ ├── (8)are-you-lucky.bmp
│ ├── (8)are-you-lucky.smp.gz
│ ├── (8)are-you-lucky.sms.gz
│ ├── (8)are-you-lucky.txt
│ ├── (8)death-in-the-rocks.bmp
│ ├── (8)death-in-the-rocks.smp.gz
│ ├── (8)death-in-the-rocks.sms.gz
│ ├── (8)diabloarena.pud.gz
│ ├── (8)diabloarena.txt
│ ├── (8)diablodarkwood.pud.gz
│ ├── (8)diablodarkwood.txt
│ ├── (8)diablomaze.pud.gz
│ ├── (8)diablomaze.txt
│ ├── (8)everywhere.bmp
│ ├── (8)everywhere.txt
│ ├── (8)fc-deathmatch-plain.pud.gz
│ ├── (8)fc-deathmatch-x.pud.gz
│ ├── (8)oil-is-the-key.bmp
│ ├── (8)oil-is-the-key.smp.gz
│ ├── (8)oil-is-the-key.sms.gz
│ ├── (8)roads-to-the-coasts.bmp
│ ├── (8)roads-to-the-coasts.smp.gz
│ ├── (8)roads-to-the-coasts.sms.gz
│ ├── (8)roads-to-the-coasts.txt
│ ├── (8)tournament-continent.bmp
│ ├── (8)tournament-continent.smp.gz
│ ├── (8)tournament-continent.sms.gz
│ ├── (8)tournament-islands.bmp
│ ├── (8)tournament-islands.smp.gz
│ └── (8)tournament-islands.sms.gz
├── pud.cpp
├── pud.h
├── pudconvert.cpp
├── release.rb
├── rip_music.h
├── rip_music_unix.cpp
├── rip_music_win32.cpp
├── scripts
├── ai.lua
├── ai
│ ├── ai_jadeite_2010.lua
│ ├── ai_nephrite_2012.lua
│ ├── ai_nephrite_2013.lua
│ ├── ai_redribbon_2012.lua
│ ├── ai_redribbon_2014.lua
│ ├── ai_redribbon_2015.lua
│ ├── ai_zoisite_2013.lua
│ ├── air_attack.lua
│ ├── land_attack.lua
│ ├── names.lua
│ ├── passive.lua
│ └── sea_attack.lua
├── anim.lua
├── buttons.lua
├── cheats.lua
├── commands.lua
├── constructions.lua
├── database.lua
├── directcontrol.lua
├── editor.lua
├── editor
│ ├── brushes.lua
│ └── brushes
│ │ ├── default.lua
│ │ ├── ramp-generator.lua
│ │ ├── ramp.lua
│ │ └── round.lua
├── extract.lua
├── fonts.lua
├── fov.lua
├── guichan.lua
├── human
│ ├── anim.lua
│ ├── buttons.lua
│ ├── campaign1.lua
│ ├── campaign2.lua
│ ├── constructions.lua
│ ├── ui.lua
│ ├── ui_pandora.lua
│ ├── ui_tales.lua
│ ├── units.lua
│ └── upgrade.lua
├── icons.lua
├── lib
│ ├── classes.lua
│ └── layouts.lua
├── lists
│ ├── campaigns
│ │ ├── Beyond the Dark Portal (Alliance)
│ │ ├── Beyond the Dark Portal (Horde)
│ │ ├── Tides of Darkness (Alliance)
│ │ └── Tides of Darkness (Horde)
│ ├── maps
│ │ ├── For the Motherland
│ │ ├── Front Lines
│ │ ├── Random Skirmish
│ │ ├── Skirmish Classic
│ │ └── Skirmish Modern
│ └── mods
│ │ ├── Wargus
│ │ └── Wargus-Coop-4
├── menus
│ ├── campaign.lua
│ ├── compactmode.lua
│ ├── credits.lua
│ ├── diplomacy.lua
│ ├── editor.lua
│ ├── endscenario.lua
│ ├── game.lua
│ ├── help.lua
│ ├── load.lua
│ ├── network.lua
│ ├── objectives.lua
│ ├── options.lua
│ ├── replay.lua
│ ├── results.lua
│ └── save.lua
├── missiles.lua
├── multiplayer.lua
├── orc
│ ├── anim.lua
│ ├── buttons.lua
│ ├── campaign1.lua
│ ├── campaign2.lua
│ ├── constructions.lua
│ ├── ui.lua
│ ├── ui_pandora.lua
│ ├── units.lua
│ └── upgrade.lua
├── scripts.lua
├── singleplayer.lua
├── sound.lua
├── spells.lua
├── stratagus.lua
├── tilesets
│ ├── summer.lua
│ ├── swamp.lua
│ ├── tilesetsList.lua
│ ├── wargus
│ │ ├── extended.lua
│ │ ├── layout.lua
│ │ ├── summer.lua
│ │ ├── swamp.lua
│ │ ├── wasteland.lua
│ │ └── winter.lua
│ ├── wasteland.lua
│ └── winter.lua
├── translate
│ ├── cz_CZ.po
│ ├── de_DE.po
│ ├── es_ES.po
│ ├── fr_FR.po
│ ├── generate_tables.py
│ ├── it_IT.po
│ ├── ru_RU.po
│ ├── stratagus-cz.po
│ ├── stratagus-de.po
│ ├── stratagus-es.po
│ ├── stratagus-fr.po
│ ├── stratagus-it.po
│ ├── stratagus-ru.po
│ └── translate.lua
├── ui.lua
├── units.lua
├── upgrade.lua
├── wc2.lua
└── widgets.lua
├── shaders
├── aa-jinc2-sharp.cg.glsl
├── bloom.cg.glsl
├── crt-easymode.cg.glsl
├── crt-reverse-aa.cg.glsl
├── dotmask.cg.glsl
├── tv-highcontrast-hd.cg.glsl
└── xbr-lv2.cg.glsl
├── uml
└── fc_scripts.md
├── wargus.cpp
├── wargus.desktop.in
├── wargus.h
├── wargus.ico
├── wargus.nsi
├── wargus.png
├── wargus.rc
├── wartool.cpp
├── wartool.h
├── xmi2mid.cpp
└── xmi2mid.h
/.bzr-builddeb/default.conf:
--------------------------------------------------------------------------------
1 | [BUILDDEB]
2 | split = True
3 |
--------------------------------------------------------------------------------
/.bzrignore:
--------------------------------------------------------------------------------
1 | debian/*.debhelper
2 | debian/files
3 | debian/*.log
4 | debian/*.substvars
5 | debian/wargus
6 | obj-*
7 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/bug_report.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Bug report
3 | about: Create a report to help us improve
4 | title: ''
5 | labels: ''
6 | assignees: ''
7 |
8 | ---
9 |
10 | **Describe the bug**
11 | A clear and concise description of what the bug is.
12 |
13 | **To Reproduce**
14 | Steps to reproduce the behavior:
15 | 1. Go to '...'
16 | 2. Click on '....'
17 | 3. See error
18 |
19 | **Expected behavior**
20 | A clear and concise description of what you expected to happen.
21 |
22 | **Screenshots and Logs**
23 | Add screenshots to help explain your problem. If you encountered the issue inside a game, please add the log from the game (find it in "My Documents/Stratagus/wc2/logs" on Windows or "$HOME/.stratagus/wc2/logs" on Linux). Please also attach your stderr and stdout. If you're on Windows, these will be in "My Documents/Stratagus/std*.txt"
24 |
25 | **Desktop (please complete the following information):**
26 | - OS: [e.g. Windows, Ubuntu, Fedora, Suse, macOS]
27 | - Version [e.g. 3.0.0, 3.0.1, 2.4.3]
28 |
--------------------------------------------------------------------------------
/.github/dependabot.yml:
--------------------------------------------------------------------------------
1 | # Keep GitHub Actions up to date with GitHub's Dependabot... dependabot.yml
2 | # https://docs.github.com/en/code-security/dependabot/working-with-dependabot/keeping-your-actions-up-to-date-with-dependabot
3 | # https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#package-ecosystem
4 | version: 2
5 | updates:
6 | - package-ecosystem: github-actions
7 | directory: /
8 | groups:
9 | github-actions:
10 | patterns:
11 | - "*" # Group all Actions updates into a single larger pull request
12 | schedule:
13 | interval: weekly
14 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | #Ignore Visual Studio project files
2 | build/
3 | .vscode/*
4 | **/.DS_Store
5 | .attach_pid*
6 | .gdb_history
7 | a.out
8 | gmon.*
9 | libStorm.*
10 | # midi patches
11 | *.sf2
12 | DoomGUS*
13 | airfont*
14 | Eric_Welsh*
15 | freepats*
16 | FreePats*
17 | MT32
18 | Roland*
19 | SC-55
20 | SGM-V2.01
21 | .idea
22 |
--------------------------------------------------------------------------------
/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "third-party"]
2 | path = third-party
3 | url = https://github.com/Wargus/dependencies
4 |
--------------------------------------------------------------------------------
/.travis.yml:
--------------------------------------------------------------------------------
1 | language: cpp
2 | compiler:
3 | - gcc
4 | jobs:
5 | include:
6 | - os: linux
7 | dist: focal
8 | # - osx
9 | addons:
10 | apt:
11 | packages:
12 | - libpng-dev
13 | - zlib1g-dev
14 | before_script:
15 | - mkdir build
16 | - cd build
17 | - curl -L https://github.com/Wargus/stratagus/archive/master.zip -O master.zip || true
18 | - unzip master.zip
19 | - cmake $EXTRA_CMAKE_FLAGS -DSTRATAGUS=stratagus -DSTRATAGUS_INCLUDE_DIR="$PWD/stratagus-master/gameheaders" ..
20 | script: make
21 | after_success:
22 | - "if [ $TRAVIS_OS_NAME == osx ]; then \
23 | if [ $TRAVIS_REPO_SLUG == Wargus/wargus -a \
24 | $TRAVIS_BRANCH == master -a \
25 | $TRAVIS_PULL_REQUEST == 'false' ]; then \
26 | cd $TRAVIS_BUILD_DIR;
27 | git clone https://${GH_TOKEN}@github.com/Wargus/stratagus.wiki.git;
28 | export STRATAGUS=$(pwd)/stratagus.wiki/$TRAVIS_OS_NAME/stratagus;
29 | mac/bundle.sh;
30 | tar czvf Wargus.app.tar.gz mac/Wargus.app;
31 | cp Wargus.app.tar.gz stratagus.wiki/$TRAVIS_OS_NAME/;
32 | cd stratagus.wiki/;
33 | git config --global user.email \"travis-ci@travis.org\";
34 | git config --global user.name \"Travis CI\";
35 | git add $TRAVIS_OS_NAME/Wargus.app.tar.gz;
36 | git commit --amend -C HEAD;
37 | git push -fq origin master;
38 | cd ..;
39 | fi;
40 | fi"
41 |
--------------------------------------------------------------------------------
/COPYING-3rd:
--------------------------------------------------------------------------------
1 | This software includes 3rd party programs:
2 |
3 |
4 | cdda2wav:
5 |
6 | Cdda2wav is a free compact disc digital audio CDDA grabber originally written for MSDOS, and later ported to Linux. It is distributed under the terms of the GNU GPL. The copyright is held by Heiko Eißfeldt. Cdda2wav has been developed with portability in mind. It runs on a variety of operating systems.
7 | Cdda2wav is part of package cdrtools.
8 |
9 | This software use MinGW 32 bit build for Windows from http://smithii.com/files/cdrtools-2.01-bootcd.ru-w32.zip
10 |
11 | License: GNU GPL
12 | Homepage: http://www.cdda2wav.de/
13 |
14 |
15 |
16 | ffmpeg:
17 |
18 | ffmpeg is a converter for various multimedia file formats. It is used in this project to convert audio and video files to theora (ogg/ogv)
19 |
20 | This software use official build for Windows from http://ffmpeg.zeranoe.com/builds/win32/static/ffmpeg-3.3.3-win32-static.zip
21 |
22 | License: GNU LGPL 2.1 (https://www.ffmpeg.org/legal.html)
23 | Homepage: https://www.ffmpeg.org
24 |
25 |
--------------------------------------------------------------------------------
/StormLib/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | English
7 | CFBundleExecutable
8 | ${EXECUTABLE_NAME}
9 | CFBundleIdentifier
10 | net.zezula.${PRODUCT_NAME:rfc1034Identifier}
11 | CFBundleName
12 | ${PRODUCT_NAME}
13 | CFBundleInfoDictionaryVersion
14 | 6.0
15 | CFBundlePackageType
16 | FMWK
17 | CFBundleSignature
18 | ????
19 | CFBundleVersion
20 | 8.01
21 |
22 |
23 |
--------------------------------------------------------------------------------
/StormLib/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 1999-2013 Ladislav Zezula
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in
13 | all copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | THE SOFTWARE.
22 |
--------------------------------------------------------------------------------
/StormLib/PostBuild.bat:
--------------------------------------------------------------------------------
1 | @echo off
2 | rem Post-build batch for StormLib project
3 | rem Called as PostBuild.bat $(ProjectName) $(PlatformName) $(ConfigurationName) [vs2008]
4 | rem Example: PostBuild.bat StormLib_dll x64 Debug vs2008
5 |
6 | rem Select build type
7 | if "%1" == "StormLib_dll" goto PostBuild_DLL
8 | if "%1" == "StormLib" goto PostBuild_LIB
9 | goto:eof
10 |
11 | :PostBuild_DLL
12 |
13 | rem Build steps for the DLL. On 32-bit Release version, increment the build number
14 | if not "x%2" == "xWin32" goto:eof
15 | if not "x%3" == "xRelease" goto:eof
16 | PostBuild.exe .\src\DllMain.rc
17 | goto:eof
18 |
19 | :PostBuild_LIB
20 |
21 | rem Set target folders
22 | if "x%2" == "xWin32" set TARGET_DIR_LEVEL2=lib32
23 | if "x%2" == "xx64" set TARGET_DIR_LEVEL2=lib64
24 | if "x%4" == "xvs2008" set TARGET_DIR_LEVEL3=vs2008
25 |
26 | rem Check & create target folder structure
27 | if not exist ..\aaa goto:eof
28 | if not exist ..\aaa\%TARGET_DIR_LEVEL2% md ..\aaa\%TARGET_DIR_LEVEL2%
29 | if not exist ..\aaa\%TARGET_DIR_LEVEL2%\%TARGET_DIR_LEVEL3% md ..\aaa\%TARGET_DIR_LEVEL2%\%TARGET_DIR_LEVEL3%
30 |
31 | rem Copy include and LIB files to the target folder
32 | copy /Y .\src\StormLib.h ..\aaa\inc >nul
33 | copy /Y .\src\StormPort.h ..\aaa\inc >nul
34 | copy /Y .\bin\%1\%2\%3\StormLib???.lib ..\aaa\%TARGET_DIR_LEVEL2%\%TARGET_DIR_LEVEL3% >nul
35 |
--------------------------------------------------------------------------------
/StormLib/Publish.bat:
--------------------------------------------------------------------------------
1 | @echo off
2 | rem This BAT file updates the ZIP file that is to be uploaded to web
3 | rem Only use when both 32-bit and 64-bit are properly compiled
4 |
5 | set STORMLIB_NAME=stormlib-9.00
6 |
7 | echo Creating %STORMLIB_NAME%.zip ...
8 | cd \Ladik\Appdir
9 | zip.exe -ur9 ..\WWW\web\download\%STORMLIB_NAME%.zip StormLib\doc\*
10 | zip.exe -ur9 ..\WWW\web\download\%STORMLIB_NAME%.zip StormLib\src\*
11 | zip.exe -ur9 ..\WWW\web\download\%STORMLIB_NAME%.zip StormLib\storm_dll\*
12 | zip.exe -ur9 ..\WWW\web\download\%STORMLIB_NAME%.zip StormLib\StormLib.xcodeproj\*
13 | zip.exe -ur9 ..\WWW\web\download\%STORMLIB_NAME%.zip StormLib\stormlib_dll\*
14 | zip.exe -ur9 ..\WWW\web\download\%STORMLIB_NAME%.zip StormLib\test\*
15 | zip.exe -u9 ..\WWW\web\download\%STORMLIB_NAME%.zip StormLib\CMakeLists.txt
16 | zip.exe -u9 ..\WWW\web\download\%STORMLIB_NAME%.zip StormLib\makefile.*
17 | zip.exe -u9 ..\WWW\web\download\%STORMLIB_NAME%.zip StormLib\Info.plist
18 | zip.exe -u9 ..\WWW\web\download\%STORMLIB_NAME%.zip StormLib\*.bat
19 | zip.exe -u9 ..\WWW\web\download\%STORMLIB_NAME%.zip StormLib\*.sln
20 | zip.exe -u9 ..\WWW\web\download\%STORMLIB_NAME%.zip StormLib\*.vcproj
21 | zip.exe -u9 ..\WWW\web\download\%STORMLIB_NAME%.zip StormLib\*.vcxproj
22 | echo.
23 |
24 | echo Press any key to exit ...
25 | pause >nul
26 |
--------------------------------------------------------------------------------
/StormLib/Publish_beta.bat:
--------------------------------------------------------------------------------
1 | @echo off
2 | rem This BAT file updates the ZIP file that is to be uploaded to web
3 | rem Only use when both 32-bit and 64-bit are properly compiled
4 |
5 | set STORMLIB_NAME=stormlib-9.00-beta
6 |
7 | echo Creating %STORMLIB_NAME%.zip ...
8 | cd \Ladik\Appdir
9 | zip.exe -ur9 ..\WWW\web\download\%STORMLIB_NAME%.zip StormLib\doc\*
10 | zip.exe -ur9 ..\WWW\web\download\%STORMLIB_NAME%.zip StormLib\src\*
11 | zip.exe -ur9 ..\WWW\web\download\%STORMLIB_NAME%.zip StormLib\storm_dll\*
12 | zip.exe -ur9 ..\WWW\web\download\%STORMLIB_NAME%.zip StormLib\StormLib.xcodeproj\*
13 | zip.exe -ur9 ..\WWW\web\download\%STORMLIB_NAME%.zip StormLib\stormlib_dll\*
14 | zip.exe -ur9 ..\WWW\web\download\%STORMLIB_NAME%.zip StormLib\test\*
15 | zip.exe -u9 ..\WWW\web\download\%STORMLIB_NAME%.zip StormLib\CMakeLists.txt
16 | zip.exe -u9 ..\WWW\web\download\%STORMLIB_NAME%.zip StormLib\makefile.*
17 | zip.exe -u9 ..\WWW\web\download\%STORMLIB_NAME%.zip StormLib\Info.plist
18 | zip.exe -u9 ..\WWW\web\download\%STORMLIB_NAME%.zip StormLib\*.bat
19 | zip.exe -u9 ..\WWW\web\download\%STORMLIB_NAME%.zip StormLib\*.sln
20 | zip.exe -u9 ..\WWW\web\download\%STORMLIB_NAME%.zip StormLib\*.vcproj
21 | zip.exe -u9 ..\WWW\web\download\%STORMLIB_NAME%.zip StormLib\*.vcxproj
22 | echo.
23 |
24 | echo Press any key to exit ...
25 | pause >nul
26 |
--------------------------------------------------------------------------------
/StormLib/README:
--------------------------------------------------------------------------------
1 | This is official repository for the StomLib library, an open-source project that can work with Blizzard MPQ archives.
--------------------------------------------------------------------------------
/StormLib/StormLib.bat:
--------------------------------------------------------------------------------
1 | @echo off
2 | rem Post-build batch for StormLib project
3 | rem Called as StormLib.bat $(PlatformName) $(ConfigurationName)
4 | rem Example: StormLib.bat x64 Debug
5 |
6 | if not exist ..\aaa goto exit
7 |
8 | copy src\StormPort.h ..\aaa\inc
9 | copy src\StormLib.h ..\aaa\inc
10 |
11 | if x%1 == xWin32 goto PlatformWin32
12 | if x%1 == xx64 goto PlatformWin64
13 | goto exit
14 |
15 | :PlatformWin32
16 | copy .\bin\StormLib\%1\%2\*.lib ..\aaa\lib32
17 | goto exit
18 |
19 | :PlatformWin64
20 | copy .\bin\StormLib\%1\%2\*.lib ..\aaa\lib64
21 | goto exit
22 |
23 | :exit
24 |
--------------------------------------------------------------------------------
/StormLib/StormLib.kdev4:
--------------------------------------------------------------------------------
1 | [Project]
2 | Manager=KDevCMakeManager
3 | Name=StormLib
4 |
--------------------------------------------------------------------------------
/StormLib/doc/d3-authenticationcode/d3-authenticationcode-deDE.txt:
--------------------------------------------------------------------------------
1 | UCMXF6EJY352EFH4XFRXCFH2XC9MQRZK
--------------------------------------------------------------------------------
/StormLib/doc/d3-authenticationcode/d3-authenticationcode-enGB.txt:
--------------------------------------------------------------------------------
1 | MMKVHY48RP7WXP4GHYBQ7SL9J9UNPHBP
--------------------------------------------------------------------------------
/StormLib/doc/d3-authenticationcode/d3-authenticationcode-enSG.txt:
--------------------------------------------------------------------------------
1 | 8MXLWHQ7VGGLTZ9MQZQSFDCLJYET3CPP
--------------------------------------------------------------------------------
/StormLib/doc/d3-authenticationcode/d3-authenticationcode-enUS.txt:
--------------------------------------------------------------------------------
1 | EJ2R5TM6XFE2GUNG5QDGHKQ9UAKPWZSZ
--------------------------------------------------------------------------------
/StormLib/doc/d3-authenticationcode/d3-authenticationcode-esES.txt:
--------------------------------------------------------------------------------
1 | PBGFBE42Z6LNK65UGJQ3WZVMCLP4HQQT
--------------------------------------------------------------------------------
/StormLib/doc/d3-authenticationcode/d3-authenticationcode-esMX.txt:
--------------------------------------------------------------------------------
1 | X7SEJJS9TSGCW5P28EBSC47AJPEY8VU2
--------------------------------------------------------------------------------
/StormLib/doc/d3-authenticationcode/d3-authenticationcode-frFR.txt:
--------------------------------------------------------------------------------
1 | 5KVBQA8VYE6XRY3DLGC5ZDE4XS4P7YA2
--------------------------------------------------------------------------------
/StormLib/doc/d3-authenticationcode/d3-authenticationcode-itIT.txt:
--------------------------------------------------------------------------------
1 | 478JD2K56EVNVVY4XX8TDWYT5B8KB254
--------------------------------------------------------------------------------
/StormLib/doc/d3-authenticationcode/d3-authenticationcode-koKR.txt:
--------------------------------------------------------------------------------
1 | 8TS4VNFQRZTN6YWHE9CHVDH9NVWD474A
--------------------------------------------------------------------------------
/StormLib/doc/d3-authenticationcode/d3-authenticationcode-plPL.txt:
--------------------------------------------------------------------------------
1 | LJ52Z32DF4LZ4ZJJXVKK3AZQA6GABLJB
--------------------------------------------------------------------------------
/StormLib/doc/d3-authenticationcode/d3-authenticationcode-ptBR.txt:
--------------------------------------------------------------------------------
1 | K6BDHY2ECUE2545YKNLBJPVYWHE7XYAG
--------------------------------------------------------------------------------
/StormLib/doc/d3-authenticationcode/d3-authenticationcode-zhTW.txt:
--------------------------------------------------------------------------------
1 | 6VWCQTN8V3ZZMRUCZXV8A8CGUX2TAA8H
--------------------------------------------------------------------------------
/StormLib/doc/hots-authenticationcode/hots-authenticationcode-bgdl.txt:
--------------------------------------------------------------------------------
1 | S48B6CDTN5XEQAKQDJNDLJBJ73FDFM3U
--------------------------------------------------------------------------------
/StormLib/doc/sc2-authenticationcode/sc2-authenticationcode-deDE.txt:
--------------------------------------------------------------------------------
1 | Y45MD3CAK4KXSSXHYD9VY64Z8EKJ4XFX
--------------------------------------------------------------------------------
/StormLib/doc/sc2-authenticationcode/sc2-authenticationcode-enGB.txt:
--------------------------------------------------------------------------------
1 | G8MN8UDG6NA2ANGY6A3DNY82HRGF29ZH
--------------------------------------------------------------------------------
/StormLib/doc/sc2-authenticationcode/sc2-authenticationcode-enUS.txt:
--------------------------------------------------------------------------------
1 | 3DH5RE5NVM5GTFD85LXGWT6FK859ETR5
--------------------------------------------------------------------------------
/StormLib/doc/sc2-authenticationcode/sc2-authenticationcode-esES.txt:
--------------------------------------------------------------------------------
1 | 8WLKUAXE94PFQU4Y249PAZ24N4R4XKTQ
--------------------------------------------------------------------------------
/StormLib/doc/sc2-authenticationcode/sc2-authenticationcode-esMX.txt:
--------------------------------------------------------------------------------
1 | A34DXX3VHGGXSQBRFE5UFFDXMF9G4G54
--------------------------------------------------------------------------------
/StormLib/doc/sc2-authenticationcode/sc2-authenticationcode-frFR.txt:
--------------------------------------------------------------------------------
1 | ZG7J9K938HJEFWPQUA768MA2PFER6EAJ
--------------------------------------------------------------------------------
/StormLib/doc/sc2-authenticationcode/sc2-authenticationcode-itIT.txt:
--------------------------------------------------------------------------------
1 | NE7CUNNNTVAPXV7E3G2BSVBWGVMW8BL2
--------------------------------------------------------------------------------
/StormLib/doc/sc2-authenticationcode/sc2-authenticationcode-koKR.txt:
--------------------------------------------------------------------------------
1 | 3V9E2FTMBM9QQWK7U6MAMWAZWQDB838F
--------------------------------------------------------------------------------
/StormLib/doc/sc2-authenticationcode/sc2-authenticationcode-plPL.txt:
--------------------------------------------------------------------------------
1 | 2NSFB8MELULJ83U6YHA3UP6K4MQD48L6
--------------------------------------------------------------------------------
/StormLib/doc/sc2-authenticationcode/sc2-authenticationcode-ptBR.txt:
--------------------------------------------------------------------------------
1 | QA2TZ9EWZ4CUU8BMB5WXCTY65F9CSW4E
--------------------------------------------------------------------------------
/StormLib/doc/sc2-authenticationcode/sc2-authenticationcode-ruRU.txt:
--------------------------------------------------------------------------------
1 | VHB378W64BAT9SH7D68VV9NLQDK9YEGT
--------------------------------------------------------------------------------
/StormLib/doc/sc2-authenticationcode/sc2-authenticationcode-zhTW.txt:
--------------------------------------------------------------------------------
1 | U3NFQJV4M6GC7KBN9XQJ3BRDN3PLD9NE
--------------------------------------------------------------------------------
/StormLib/make.bat:
--------------------------------------------------------------------------------
1 | @echo off
2 | if not "x%WDKDIR%" == "x" goto SELECT_LIB
3 | echo The WDKDIR environment variable is not set
4 | echo Set this variable to your WDK directory (without ending backslash)
5 | echo Example: set WDKDIR C:\WinDDK\6001
6 | pause
7 | goto:eof
8 |
9 | :SELECT_LIB
10 | set PROJECT_DIR=%~dp0
11 | set LIBRARY_NAME=StormLibWDK
12 |
13 | :PREPARE_SOURCES
14 | echo Preparing sources ...
15 | copy .\src\wdk\sources-cpp.cpp . >nul
16 | copy .\src\wdk\sources-wdk-* . >nul
17 | echo.
18 |
19 | :BUILD_LIB_32
20 | echo Building %LIBRARY_NAME%.lib (32-bit) ...
21 | set DDKBUILDENV=
22 | call %WDKDIR%\bin\setenv.bat %WDKDIR%\ fre w2k
23 | cd %PROJECT_DIR%
24 | build.exe -czgw
25 | del buildfre_w2k_x86.log
26 | echo.
27 |
28 | :BUILD_LIB_64
29 | echo Building %LIBRARY_NAME%.lib (64-bit) ...
30 | set DDKBUILDENV=
31 | call %WDKDIR%\bin\setenv.bat %WDKDIR%\ fre x64 WLH
32 | cd %PROJECT_DIR%
33 | build.exe -czgw
34 | del buildfre_wlh_amd64.log
35 | echo.
36 |
37 | :COPY_LIBS
38 | copy /Y .\objfre_wlh_amd64\amd64\%LIBRARY_NAME%.lib ..\aaa\lib64\%LIBRARY_NAME%.lib >nul
39 | copy /Y .\objfre_w2k_x86\i386\%LIBRARY_NAME%.lib ..\aaa\lib32\%LIBRARY_NAME%.lib >nul
40 | copy /Y .\src\StormPort.h ..\aaa\inc >nul
41 | copy /Y .\src\StormLib.h ..\aaa\inc >nul
42 |
43 | :CLEANUP
44 | if exist sources-cpp.cpp del sources-cpp.cpp
45 | if exist sources-wdk-* del sources-wdk-*
46 | if exist build.bat del build.bat
47 |
--------------------------------------------------------------------------------
/StormLib/sources:
--------------------------------------------------------------------------------
1 | TARGETNAME=StormLibWDK
2 | TARGETTYPE=LIBRARY
3 | USE_MSVCRT=1
4 |
5 | C_DEFINES=$(C_DEFINES) -DUNICODE -D_UNICODE -DWDK_BUILD
6 |
7 | SOURCES=sources-cpp.cpp \
8 | sources-wdk-bzip2.c \
9 | sources-wdk-ltc.c \
10 | sources-wdk-lzma.c \
11 | sources-wdk-misc.c \
12 | sources-wdk-tomcrypt.c \
13 | sources-wdk-tommath.c \
14 | sources-wdk-zlib.c
15 |
--------------------------------------------------------------------------------
/StormLib/src/DllMain.c:
--------------------------------------------------------------------------------
1 | /*****************************************************************************/
2 | /* DllMain.c Copyright (c) Ladislav Zezula 2006 */
3 | /*---------------------------------------------------------------------------*/
4 | /* Description: DllMain for the StormLib.dll library */
5 | /*---------------------------------------------------------------------------*/
6 | /* Date Ver Who Comment */
7 | /* -------- ---- --- ------- */
8 | /* 23.11.06 1.00 Lad The first version of DllMain.c */
9 | /*****************************************************************************/
10 |
11 | #define WIN32_LEAN_AND_MEAN
12 | #include
13 |
14 | //-----------------------------------------------------------------------------
15 | // DllMain
16 |
17 | BOOL WINAPI DllMain(HINSTANCE hInst, DWORD dwReason, LPVOID lpReserved)
18 | {
19 | UNREFERENCED_PARAMETER(hInst);
20 | UNREFERENCED_PARAMETER(dwReason);
21 | UNREFERENCED_PARAMETER(lpReserved);
22 |
23 | return TRUE;
24 | }
25 |
--------------------------------------------------------------------------------
/StormLib/src/StormLib.exp:
--------------------------------------------------------------------------------
1 | #
2 | # Export file for Mac OS X
3 | # Copyright (c) 2009 Sam Wilkins
4 | # swilkins1337@gmail.com
5 | #
6 |
7 | _SFileSetLocale
8 | _SFileGetLocale
9 |
10 | _SFileOpenArchive
11 | _SFileCreateArchive
12 | _SFileFlushArchive
13 | _SFileCloseArchive
14 |
15 | _SFileAddListFile
16 |
17 | _SFileSetCompactCallback
18 | _SFileCompactArchive
19 |
20 | _SFileGetMaxFileCount
21 | _SFileSetMaxFileCount
22 |
23 | _SFileGetAttributes
24 | _SFileSetAttributes
25 | _SFileUpdateFileAttributes
26 |
27 | _SFileOpenPatchArchive
28 | _SFileIsPatchedArchive
29 |
30 | _SFileOpenFileEx
31 | _SFileGetFileSize
32 | _SFileSetFilePointer
33 | _SFileReadFile
34 | _SFileCloseFile
35 |
36 | _SFileHasFile
37 | _SFileGetFileName
38 | _SFileGetFileInfo
39 |
40 | _SFileExtractFile
41 |
42 | _SFileVerifyFile
43 | _SFileVerifyRawData
44 | _SFileVerifyArchive
45 |
46 | _SFileFindFirstFile
47 | _SFileFindNextFile
48 | _SFileFindClose
49 |
50 | _SListFileFindFirstFile
51 | _SListFileFindNextFile
52 | _SListFileFindClose
53 |
54 | _SFileEnumLocales
55 |
56 | _SFileCreateFile
57 | _SFileWriteFile
58 | _SFileFinishFile
59 | _SFileAddFileEx
60 | _SFileAddFile
61 | _SFileAddWave
62 | _SFileRemoveFile
63 | _SFileRenameFile
64 | _SFileSetFileLocale
65 | _SFileSetDataCompression
66 | _SFileSetAddFileCallback
67 |
68 | _SCompImplode
69 | _SCompExplode
70 | _SCompCompress
71 | _SCompDecompress
72 |
73 | _SetLastError
74 | _GetLastError
75 |
--------------------------------------------------------------------------------
/StormLib/src/adpcm/adpcm.h:
--------------------------------------------------------------------------------
1 | /*****************************************************************************/
2 | /* adpcm.h Copyright (c) Ladislav Zezula 2003 */
3 | /*---------------------------------------------------------------------------*/
4 | /* Header file for adpcm decompress functions */
5 | /*---------------------------------------------------------------------------*/
6 | /* Date Ver Who Comment */
7 | /* -------- ---- --- ------- */
8 | /* 31.03.03 1.00 Lad The first version of adpcm.h */
9 | /*****************************************************************************/
10 |
11 | #ifndef __ADPCM_H__
12 | #define __ADPCM_H__
13 |
14 | //-----------------------------------------------------------------------------
15 | // Defines
16 |
17 | #define MAX_ADPCM_CHANNEL_COUNT 2
18 | #define INITIAL_ADPCM_STEP_INDEX 0x2C
19 |
20 | //-----------------------------------------------------------------------------
21 | // Public functions
22 |
23 | int CompressADPCM (void * pvOutBuffer, int dwOutLength, void * pvInBuffer, int dwInLength, int nCmpType, int ChannelCount);
24 | int DecompressADPCM(void * pvOutBuffer, int dwOutLength, void * pvInBuffer, int dwInLength, int ChannelCount);
25 |
26 | #endif // __ADPCM_H__
27 |
--------------------------------------------------------------------------------
/StormLib/src/jenkins/lookup.h:
--------------------------------------------------------------------------------
1 | #ifndef __LOOKUP3_H__
2 | #define __LOOKUP3_H__
3 |
4 | #ifdef WIN32
5 | typedef unsigned char uint8_t;
6 | typedef unsigned short uint16_t;
7 | typedef unsigned int uint32_t;
8 | #else
9 | #include /* defines uint32_t etc */
10 | #endif
11 |
12 | #ifdef __cplusplus
13 | extern "C"
14 | {
15 | #endif
16 |
17 | uint32_t hashlittle(const void *key, size_t length, uint32_t initval);
18 | void hashlittle2(const void *key, size_t length, uint32_t *pc, uint32_t *pb);
19 |
20 | #ifdef __cplusplus
21 | }
22 | #endif
23 |
24 | #endif // __LOOKUP3_H__
25 |
--------------------------------------------------------------------------------
/StormLib/src/libtomcrypt/src/headers/tomcrypt_argchk.h:
--------------------------------------------------------------------------------
1 | /* Defines the LTC_ARGCHK macro used within the library */
2 | /* ARGTYPE is defined in mycrypt_cfg.h */
3 | #if ARGTYPE == 0
4 |
5 | #include
6 |
7 | /* this is the default LibTomCrypt macro */
8 | void crypt_argchk(char *v, char *s, int d);
9 | #define LTC_ARGCHK(x) if (!(x)) { crypt_argchk(#x, __FILE__, __LINE__); }
10 | #define LTC_ARGCHKVD(x) LTC_ARGCHK(x)
11 |
12 | #elif ARGTYPE == 1
13 |
14 | /* fatal type of error */
15 | #define LTC_ARGCHK(x) assert((x))
16 | #define LTC_ARGCHKVD(x) LTC_ARGCHK(x)
17 |
18 | #elif ARGTYPE == 2
19 |
20 | #define LTC_ARGCHK(x) if (!(x)) { fprintf(stderr, "\nwarning: ARGCHK failed at %s:%d\n", __FILE__, __LINE__); }
21 | #define LTC_ARGCHKVD(x) LTC_ARGCHK(x)
22 |
23 | #elif ARGTYPE == 3
24 |
25 | #define LTC_ARGCHK(x)
26 | #define LTC_ARGCHKVD(x) LTC_ARGCHK(x)
27 |
28 | #elif ARGTYPE == 4
29 |
30 | #define LTC_ARGCHK(x) if (!(x)) return CRYPT_INVALID_ARG;
31 | #define LTC_ARGCHKVD(x) if (!(x)) return;
32 |
33 | #endif
34 |
35 |
36 | /* $Source: /cvs/libtom/libtomcrypt/src/headers/tomcrypt_argchk.h,v $ */
37 | /* $Revision: 1.5 $ */
38 | /* $Date: 2006/08/27 20:50:21 $ */
39 |
--------------------------------------------------------------------------------
/StormLib/src/libtomcrypt/src/headers/tomcrypt_misc.h:
--------------------------------------------------------------------------------
1 | /* ---- LTC_BASE64 Routines ---- */
2 | #ifdef LTC_BASE64
3 | int base64_encode(const unsigned char *in, unsigned long len,
4 | unsigned char *out, unsigned long *outlen);
5 |
6 | int base64_decode(const unsigned char *in, unsigned long len,
7 | unsigned char *out, unsigned long *outlen);
8 | #endif
9 |
10 | /* ---- MEM routines ---- */
11 | void zeromem(void *dst, size_t len);
12 | void burn_stack(unsigned long len);
13 |
14 | const char *error_to_string(int err);
15 |
16 | extern const char *crypt_build_settings;
17 |
18 | /* ---- HMM ---- */
19 | int crypt_fsa(void *mp, ...);
20 |
21 | /* $Source: /cvs/libtom/libtomcrypt/src/headers/tomcrypt_misc.h,v $ */
22 | /* $Revision: 1.5 $ */
23 | /* $Date: 2007/05/12 14:32:35 $ */
24 |
--------------------------------------------------------------------------------
/StormLib/src/libtomcrypt/src/misc/crypt_argchk.c:
--------------------------------------------------------------------------------
1 | /* LibTomCrypt, modular cryptographic library -- Tom St Denis
2 | *
3 | * LibTomCrypt is a library that provides various cryptographic
4 | * algorithms in a highly modular and flexible manner.
5 | *
6 | * The library is free for all purposes without any express
7 | * guarantee it works.
8 | *
9 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
10 | */
11 | #include "../headers/tomcrypt.h"
12 | #include
13 |
14 | /**
15 | @file crypt_argchk.c
16 | Perform argument checking, Tom St Denis
17 | */
18 |
19 | #if (ARGTYPE == 0)
20 | void crypt_argchk(char *v, char *s, int d)
21 | {
22 | fprintf(stderr, "LTC_ARGCHK '%s' failure on line %d of file %s\n",
23 | v, d, s);
24 | (void)raise(SIGABRT);
25 | }
26 | #endif
27 |
28 | /* $Source: /cvs/libtom/libtomcrypt/src/misc/crypt/crypt_argchk.c,v $ */
29 | /* $Revision: 1.5 $ */
30 | /* $Date: 2006/12/28 01:27:24 $ */
31 |
--------------------------------------------------------------------------------
/StormLib/src/libtomcrypt/src/misc/crypt_find_hash.c:
--------------------------------------------------------------------------------
1 | /* LibTomCrypt, modular cryptographic library -- Tom St Denis
2 | *
3 | * LibTomCrypt is a library that provides various cryptographic
4 | * algorithms in a highly modular and flexible manner.
5 | *
6 | * The library is free for all purposes without any express
7 | * guarantee it works.
8 | *
9 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
10 | */
11 | #include "../headers/tomcrypt.h"
12 |
13 | /**
14 | @file crypt_find_hash.c
15 | Find a hash, Tom St Denis
16 | */
17 |
18 | /**
19 | Find a registered hash by name
20 | @param name The name of the hash to look for
21 | @return >= 0 if found, -1 if not present
22 | */
23 | int find_hash(const char *name)
24 | {
25 | int x;
26 | LTC_ARGCHK(name != NULL);
27 | LTC_MUTEX_LOCK(<c_hash_mutex);
28 | for (x = 0; x < TAB_SIZE; x++) {
29 | if (hash_descriptor[x].name != NULL && XSTRCMP(hash_descriptor[x].name, name) == 0) {
30 | LTC_MUTEX_UNLOCK(<c_hash_mutex);
31 | return x;
32 | }
33 | }
34 | LTC_MUTEX_UNLOCK(<c_hash_mutex);
35 | return -1;
36 | }
37 |
38 | /* $Source: /cvs/libtom/libtomcrypt/src/misc/crypt/crypt_find_hash.c,v $ */
39 | /* $Revision: 1.7 $ */
40 | /* $Date: 2006/12/28 01:27:24 $ */
41 |
--------------------------------------------------------------------------------
/StormLib/src/libtomcrypt/src/misc/crypt_find_prng.c:
--------------------------------------------------------------------------------
1 | /* LibTomCrypt, modular cryptographic library -- Tom St Denis
2 | *
3 | * LibTomCrypt is a library that provides various cryptographic
4 | * algorithms in a highly modular and flexible manner.
5 | *
6 | * The library is free for all purposes without any express
7 | * guarantee it works.
8 | *
9 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
10 | */
11 | #include "../headers/tomcrypt.h"
12 |
13 | /**
14 | @file crypt_find_prng.c
15 | Find a PRNG, Tom St Denis
16 | */
17 |
18 | /**
19 | Find a registered PRNG by name
20 | @param name The name of the PRNG to look for
21 | @return >= 0 if found, -1 if not present
22 | */
23 | int find_prng(const char *name)
24 | {
25 | int x;
26 | LTC_ARGCHK(name != NULL);
27 | LTC_MUTEX_LOCK(<c_prng_mutex);
28 | for (x = 0; x < TAB_SIZE; x++) {
29 | if ((prng_descriptor[x].name != NULL) && XSTRCMP(prng_descriptor[x].name, name) == 0) {
30 | LTC_MUTEX_UNLOCK(<c_prng_mutex);
31 | return x;
32 | }
33 | }
34 | LTC_MUTEX_UNLOCK(<c_prng_mutex);
35 | return -1;
36 | }
37 |
38 |
39 | /* $Source: /cvs/libtom/libtomcrypt/src/misc/crypt/crypt_find_prng.c,v $ */
40 | /* $Revision: 1.7 $ */
41 | /* $Date: 2006/12/28 01:27:24 $ */
42 |
--------------------------------------------------------------------------------
/StormLib/src/libtomcrypt/src/misc/crypt_hash_descriptor.c:
--------------------------------------------------------------------------------
1 | /* LibTomCrypt, modular cryptographic library -- Tom St Denis
2 | *
3 | * LibTomCrypt is a library that provides various cryptographic
4 | * algorithms in a highly modular and flexible manner.
5 | *
6 | * The library is free for all purposes without any express
7 | * guarantee it works.
8 | *
9 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
10 | */
11 | #include "../headers/tomcrypt.h"
12 |
13 | /**
14 | @file crypt_hash_descriptor.c
15 | Stores the hash descriptor table, Tom St Denis
16 | */
17 |
18 | struct ltc_hash_descriptor hash_descriptor[TAB_SIZE] = {
19 | { NULL, 0, 0, 0, { 0 }, 0, NULL, NULL, NULL, NULL, NULL }
20 | };
21 |
22 | LTC_MUTEX_GLOBAL(ltc_hash_mutex)
23 |
24 |
25 | /* $Source: /cvs/libtom/libtomcrypt/src/misc/crypt/crypt_hash_descriptor.c,v $ */
26 | /* $Revision: 1.10 $ */
27 | /* $Date: 2006/12/28 01:27:24 $ */
28 |
--------------------------------------------------------------------------------
/StormLib/src/libtomcrypt/src/misc/crypt_hash_is_valid.c:
--------------------------------------------------------------------------------
1 | /* LibTomCrypt, modular cryptographic library -- Tom St Denis
2 | *
3 | * LibTomCrypt is a library that provides various cryptographic
4 | * algorithms in a highly modular and flexible manner.
5 | *
6 | * The library is free for all purposes without any express
7 | * guarantee it works.
8 | *
9 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
10 | */
11 | #include "../headers/tomcrypt.h"
12 |
13 | /**
14 | @file crypt_hash_is_valid.c
15 | Determine if hash is valid, Tom St Denis
16 | */
17 |
18 | /*
19 | Test if a hash index is valid
20 | @param idx The index of the hash to search for
21 | @return CRYPT_OK if valid
22 | */
23 | int hash_is_valid(int idx)
24 | {
25 | LTC_MUTEX_LOCK(<c_hash_mutex);
26 | if (idx < 0 || idx >= TAB_SIZE || hash_descriptor[idx].name == NULL) {
27 | LTC_MUTEX_UNLOCK(<c_hash_mutex);
28 | return CRYPT_INVALID_HASH;
29 | }
30 | LTC_MUTEX_UNLOCK(<c_hash_mutex);
31 | return CRYPT_OK;
32 | }
33 |
34 | /* $Source: /cvs/libtom/libtomcrypt/src/misc/crypt/crypt_hash_is_valid.c,v $ */
35 | /* $Revision: 1.6 $ */
36 | /* $Date: 2006/12/28 01:27:24 $ */
37 |
--------------------------------------------------------------------------------
/StormLib/src/libtomcrypt/src/misc/crypt_ltc_mp_descriptor.c:
--------------------------------------------------------------------------------
1 | /* LibTomCrypt, modular cryptographic library -- Tom St Denis
2 | *
3 | * LibTomCrypt is a library that provides various cryptographic
4 | * algorithms in a highly modular and flexible manner.
5 | *
6 | * The library is free for all purposes without any express
7 | * guarantee it works.
8 | *
9 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
10 | */
11 | #include "../headers/tomcrypt.h"
12 |
13 | ltc_math_descriptor ltc_mp = {0};
14 |
--------------------------------------------------------------------------------
/StormLib/src/libtomcrypt/src/misc/crypt_prng_descriptor.c:
--------------------------------------------------------------------------------
1 | /* LibTomCrypt, modular cryptographic library -- Tom St Denis
2 | *
3 | * LibTomCrypt is a library that provides various cryptographic
4 | * algorithms in a highly modular and flexible manner.
5 | *
6 | * The library is free for all purposes without any express
7 | * guarantee it works.
8 | *
9 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
10 | */
11 | #include "../headers/tomcrypt.h"
12 |
13 | /**
14 | @file crypt_prng_descriptor.c
15 | Stores the PRNG descriptors, Tom St Denis
16 | */
17 | struct ltc_prng_descriptor prng_descriptor[TAB_SIZE] = {
18 | { NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL }
19 | };
20 |
21 | LTC_MUTEX_GLOBAL(ltc_prng_mutex)
22 |
23 |
24 | /* $Source: /cvs/libtom/libtomcrypt/src/misc/crypt/crypt_prng_descriptor.c,v $ */
25 | /* $Revision: 1.8 $ */
26 | /* $Date: 2006/12/28 01:27:24 $ */
27 |
--------------------------------------------------------------------------------
/StormLib/src/libtomcrypt/src/misc/crypt_prng_is_valid.c:
--------------------------------------------------------------------------------
1 | /* LibTomCrypt, modular cryptographic library -- Tom St Denis
2 | *
3 | * LibTomCrypt is a library that provides various cryptographic
4 | * algorithms in a highly modular and flexible manner.
5 | *
6 | * The library is free for all purposes without any express
7 | * guarantee it works.
8 | *
9 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
10 | */
11 | #include "../headers/tomcrypt.h"
12 |
13 | /**
14 | @file crypt_prng_is_valid.c
15 | Determine if PRNG is valid, Tom St Denis
16 | */
17 |
18 | /*
19 | Test if a PRNG index is valid
20 | @param idx The index of the PRNG to search for
21 | @return CRYPT_OK if valid
22 | */
23 | int prng_is_valid(int idx)
24 | {
25 | LTC_MUTEX_LOCK(<c_prng_mutex);
26 | if (idx < 0 || idx >= TAB_SIZE || prng_descriptor[idx].name == NULL) {
27 | LTC_MUTEX_UNLOCK(<c_prng_mutex);
28 | return CRYPT_INVALID_PRNG;
29 | }
30 | LTC_MUTEX_UNLOCK(<c_prng_mutex);
31 | return CRYPT_OK;
32 | }
33 |
34 | /* $Source: /cvs/libtom/libtomcrypt/src/misc/crypt/crypt_prng_is_valid.c,v $ */
35 | /* $Revision: 1.6 $ */
36 | /* $Date: 2006/12/28 01:27:24 $ */
37 |
--------------------------------------------------------------------------------
/StormLib/src/libtomcrypt/src/misc/zeromem.c:
--------------------------------------------------------------------------------
1 | /* LibTomCrypt, modular cryptographic library -- Tom St Denis
2 | *
3 | * LibTomCrypt is a library that provides various cryptographic
4 | * algorithms in a highly modular and flexible manner.
5 | *
6 | * The library is free for all purposes without any express
7 | * guarantee it works.
8 | *
9 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
10 | */
11 | #include "../headers/tomcrypt.h"
12 |
13 | /**
14 | @file zeromem.c
15 | Zero a block of memory, Tom St Denis
16 | */
17 |
18 | /**
19 | Zero a block of memory
20 | @param out The destination of the area to zero
21 | @param outlen The length of the area to zero (octets)
22 | */
23 | void zeromem(void *out, size_t outlen)
24 | {
25 | unsigned char *mem = out;
26 | LTC_ARGCHKVD(out != NULL);
27 | while (outlen-- > 0) {
28 | *mem++ = 0;
29 | }
30 | }
31 |
32 | /* $Source: /cvs/libtom/libtomcrypt/src/misc/zeromem.c,v $ */
33 | /* $Revision: 1.7 $ */
34 | /* $Date: 2006/12/28 01:27:24 $ */
35 |
--------------------------------------------------------------------------------
/StormLib/src/libtomcrypt/src/pk/asn1/der_decode_boolean.c:
--------------------------------------------------------------------------------
1 | /* LibTomCrypt, modular cryptographic library -- Tom St Denis
2 | *
3 | * LibTomCrypt is a library that provides various cryptographic
4 | * algorithms in a highly modular and flexible manner.
5 | *
6 | * The library is free for all purposes without any express
7 | * guarantee it works.
8 | *
9 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
10 | */
11 | #include "../../headers/tomcrypt.h"
12 |
13 | /**
14 | @file der_decode_boolean.c
15 | ASN.1 DER, decode a BOOLEAN, Tom St Denis
16 | */
17 |
18 |
19 | #ifdef LTC_DER
20 |
21 | /**
22 | Read a BOOLEAN
23 | @param in The destination for the DER encoded BOOLEAN
24 | @param inlen The size of the DER BOOLEAN
25 | @param out [out] The boolean to decode
26 | @return CRYPT_OK if successful
27 | */
28 | int der_decode_boolean(const unsigned char *in, unsigned long inlen,
29 | int *out)
30 | {
31 | LTC_ARGCHK(in != NULL);
32 | LTC_ARGCHK(out != NULL);
33 |
34 | if (inlen != 3 || in[0] != 0x01 || in[1] != 0x01 || (in[2] != 0x00 && in[2] != 0xFF)) {
35 | return CRYPT_INVALID_ARG;
36 | }
37 |
38 | *out = (in[2]==0xFF) ? 1 : 0;
39 |
40 | return CRYPT_OK;
41 | }
42 |
43 | #endif
44 |
45 | /* $Source: /cvs/libtom/libtomcrypt/src/pk/asn1/der/boolean/der_decode_boolean.c,v $ */
46 | /* $Revision: 1.2 $ */
47 | /* $Date: 2006/12/28 01:27:24 $ */
48 |
--------------------------------------------------------------------------------
/StormLib/src/libtomcrypt/src/pk/asn1/der_encode_boolean.c:
--------------------------------------------------------------------------------
1 | /* LibTomCrypt, modular cryptographic library -- Tom St Denis
2 | *
3 | * LibTomCrypt is a library that provides various cryptographic
4 | * algorithms in a highly modular and flexible manner.
5 | *
6 | * The library is free for all purposes without any express
7 | * guarantee it works.
8 | *
9 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
10 | */
11 | #include "../../headers/tomcrypt.h"
12 |
13 | /**
14 | @file der_encode_boolean.c
15 | ASN.1 DER, encode a BOOLEAN, Tom St Denis
16 | */
17 |
18 |
19 | #ifdef LTC_DER
20 |
21 | /**
22 | Store a BOOLEAN
23 | @param in The boolean to encode
24 | @param out [out] The destination for the DER encoded BOOLEAN
25 | @param outlen [in/out] The max size and resulting size of the DER BOOLEAN
26 | @return CRYPT_OK if successful
27 | */
28 | int der_encode_boolean(int in,
29 | unsigned char *out, unsigned long *outlen)
30 | {
31 | LTC_ARGCHK(outlen != NULL);
32 | LTC_ARGCHK(out != NULL);
33 |
34 | if (*outlen < 3) {
35 | *outlen = 3;
36 | return CRYPT_BUFFER_OVERFLOW;
37 | }
38 |
39 | *outlen = 3;
40 | out[0] = 0x01;
41 | out[1] = 0x01;
42 | out[2] = in ? 0xFF : 0x00;
43 |
44 | return CRYPT_OK;
45 | }
46 |
47 | #endif
48 |
49 | /* $Source: /cvs/libtom/libtomcrypt/src/pk/asn1/der/boolean/der_encode_boolean.c,v $ */
50 | /* $Revision: 1.4 $ */
51 | /* $Date: 2006/12/28 01:27:24 $ */
52 |
--------------------------------------------------------------------------------
/StormLib/src/libtomcrypt/src/pk/asn1/der_length_boolean.c:
--------------------------------------------------------------------------------
1 | /* LibTomCrypt, modular cryptographic library -- Tom St Denis
2 | *
3 | * LibTomCrypt is a library that provides various cryptographic
4 | * algorithms in a highly modular and flexible manner.
5 | *
6 | * The library is free for all purposes without any express
7 | * guarantee it works.
8 | *
9 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
10 | */
11 | #include "../../headers/tomcrypt.h"
12 |
13 | /**
14 | @file der_length_boolean.c
15 | ASN.1 DER, get length of a BOOLEAN, Tom St Denis
16 | */
17 |
18 | #ifdef LTC_DER
19 | /**
20 | Gets length of DER encoding of a BOOLEAN
21 | @param outlen [out] The length of the DER encoding
22 | @return CRYPT_OK if successful
23 | */
24 | int der_length_boolean(unsigned long *outlen)
25 | {
26 | LTC_ARGCHK(outlen != NULL);
27 | *outlen = 3;
28 | return CRYPT_OK;
29 | }
30 |
31 | #endif
32 |
33 | /* $Source: /cvs/libtom/libtomcrypt/src/pk/asn1/der/boolean/der_length_boolean.c,v $ */
34 | /* $Revision: 1.3 $ */
35 | /* $Date: 2006/12/28 01:27:24 $ */
36 |
--------------------------------------------------------------------------------
/StormLib/src/libtomcrypt/src/pk/asn1/der_length_utctime.c:
--------------------------------------------------------------------------------
1 | /* LibTomCrypt, modular cryptographic library -- Tom St Denis
2 | *
3 | * LibTomCrypt is a library that provides various cryptographic
4 | * algorithms in a highly modular and flexible manner.
5 | *
6 | * The library is free for all purposes without any express
7 | * guarantee it works.
8 | *
9 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
10 | */
11 | #include "../../headers/tomcrypt.h"
12 |
13 | /**
14 | @file der_length_utctime.c
15 | ASN.1 DER, get length of UTCTIME, Tom St Denis
16 | */
17 |
18 | #ifdef LTC_DER
19 |
20 | /**
21 | Gets length of DER encoding of UTCTIME
22 | @param utctime The UTC time structure to get the size of
23 | @param outlen [out] The length of the DER encoding
24 | @return CRYPT_OK if successful
25 | */
26 | int der_length_utctime(ltc_utctime *utctime, unsigned long *outlen)
27 | {
28 | LTC_ARGCHK(outlen != NULL);
29 | LTC_ARGCHK(utctime != NULL);
30 |
31 | if (utctime->off_hh == 0 && utctime->off_mm == 0) {
32 | /* we encode as YYMMDDhhmmssZ */
33 | *outlen = 2 + 13;
34 | } else {
35 | /* we encode as YYMMDDhhmmss{+|-}hh'mm' */
36 | *outlen = 2 + 17;
37 | }
38 |
39 | return CRYPT_OK;
40 | }
41 |
42 | #endif
43 |
44 | /* $Source: /cvs/libtom/libtomcrypt/src/pk/asn1/der/utctime/der_length_utctime.c,v $ */
45 | /* $Revision: 1.5 $ */
46 | /* $Date: 2006/12/28 01:27:24 $ */
47 |
--------------------------------------------------------------------------------
/StormLib/src/libtomcrypt/src/pk/rsa/rsa_free.c:
--------------------------------------------------------------------------------
1 | /* LibTomCrypt, modular cryptographic library -- Tom St Denis
2 | *
3 | * LibTomCrypt is a library that provides various cryptographic
4 | * algorithms in a highly modular and flexible manner.
5 | *
6 | * The library is free for all purposes without any express
7 | * guarantee it works.
8 | *
9 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
10 | */
11 | #include "../../headers/tomcrypt.h"
12 |
13 | /**
14 | @file rsa_free.c
15 | Free an RSA key, Tom St Denis
16 | */
17 |
18 | #ifdef LTC_MRSA
19 |
20 | /**
21 | Free an RSA key from memory
22 | @param key The RSA key to free
23 | */
24 | void rsa_free(rsa_key *key)
25 | {
26 | LTC_ARGCHKVD(key != NULL);
27 | mp_clear_multi(key->e, key->d, key->N, key->dQ, key->dP, key->qP, key->p, key->q, NULL);
28 | }
29 |
30 | #endif
31 |
32 | /* $Source: /cvs/libtom/libtomcrypt/src/pk/rsa/rsa_free.c,v $ */
33 | /* $Revision: 1.10 $ */
34 | /* $Date: 2007/05/12 14:32:35 $ */
35 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_2expt.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_2EXPT_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* computes a = 2**b
19 | *
20 | * Simple algorithm which zeroes the int, grows it then just sets one bit
21 | * as required.
22 | */
23 | int
24 | mp_2expt (mp_int * a, int b)
25 | {
26 | int res;
27 |
28 | /* zero a as per default */
29 | mp_zero (a);
30 |
31 | /* grow a to accomodate the single bit */
32 | if ((res = mp_grow (a, b / DIGIT_BIT + 1)) != MP_OKAY) {
33 | return res;
34 | }
35 |
36 | /* set the used count of where the bit will go */
37 | a->used = b / DIGIT_BIT + 1;
38 |
39 | /* put the single bit in its place */
40 | a->dp[b / DIGIT_BIT] = ((mp_digit)1) << (b % DIGIT_BIT);
41 |
42 | return MP_OKAY;
43 | }
44 | #endif
45 |
46 | /* $Source: /cvs/libtom/libtommath/bn_mp_2expt.c,v $ */
47 | /* $Revision: 1.4 $ */
48 | /* $Date: 2006/12/28 01:25:13 $ */
49 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_abs.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_ABS_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* b = |a|
19 | *
20 | * Simple function copies the input and fixes the sign to positive
21 | */
22 | int
23 | mp_abs (mp_int * a, mp_int * b)
24 | {
25 | int res;
26 |
27 | /* copy a to b */
28 | if (a != b) {
29 | if ((res = mp_copy (a, b)) != MP_OKAY) {
30 | return res;
31 | }
32 | }
33 |
34 | /* force the sign of b to positive */
35 | b->sign = MP_ZPOS;
36 |
37 | return MP_OKAY;
38 | }
39 | #endif
40 |
41 | /* $Source: /cvs/libtom/libtommath/bn_mp_abs.c,v $ */
42 | /* $Revision: 1.4 $ */
43 | /* $Date: 2006/12/28 01:25:13 $ */
44 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_addmod.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_ADDMOD_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* d = a + b (mod c) */
19 | int
20 | mp_addmod (mp_int * a, mp_int * b, mp_int * c, mp_int * d)
21 | {
22 | int res;
23 | mp_int t;
24 |
25 | if ((res = mp_init (&t)) != MP_OKAY) {
26 | return res;
27 | }
28 |
29 | if ((res = mp_add (a, b, &t)) != MP_OKAY) {
30 | mp_clear (&t);
31 | return res;
32 | }
33 | res = mp_mod (&t, c, d);
34 | mp_clear (&t);
35 | return res;
36 | }
37 | #endif
38 |
39 | /* $Source: /cvs/libtom/libtommath/bn_mp_addmod.c,v $ */
40 | /* $Revision: 1.4 $ */
41 | /* $Date: 2006/12/28 01:25:13 $ */
42 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_clamp.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_CLAMP_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* trim unused digits
19 | *
20 | * This is used to ensure that leading zero digits are
21 | * trimed and the leading "used" digit will be non-zero
22 | * Typically very fast. Also fixes the sign if there
23 | * are no more leading digits
24 | */
25 | void
26 | mp_clamp (mp_int * a)
27 | {
28 | /* decrease used while the most significant digit is
29 | * zero.
30 | */
31 | while (a->used > 0 && a->dp[a->used - 1] == 0) {
32 | --(a->used);
33 | }
34 |
35 | /* reset the sign flag if used == 0 */
36 | if (a->used == 0) {
37 | a->sign = MP_ZPOS;
38 | }
39 | }
40 | #endif
41 |
42 | /* $Source: /cvs/libtom/libtommath/bn_mp_clamp.c,v $ */
43 | /* $Revision: 1.4 $ */
44 | /* $Date: 2006/12/28 01:25:13 $ */
45 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_clear.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_CLEAR_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* clear one (frees) */
19 | void
20 | mp_clear (mp_int * a)
21 | {
22 | int i;
23 |
24 | /* only do anything if a hasn't been freed previously */
25 | if (a->dp != NULL) {
26 | /* first zero the digits */
27 | for (i = 0; i < a->used; i++) {
28 | a->dp[i] = 0;
29 | }
30 |
31 | /* free ram */
32 | XFREE(a->dp);
33 |
34 | /* reset members to make debugging easier */
35 | a->dp = NULL;
36 | a->alloc = a->used = 0;
37 | a->sign = MP_ZPOS;
38 | }
39 | }
40 | #endif
41 |
42 | /* $Source: /cvs/libtom/libtommath/bn_mp_clear.c,v $ */
43 | /* $Revision: 1.4 $ */
44 | /* $Date: 2006/12/28 01:25:13 $ */
45 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_clear_multi.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_CLEAR_MULTI_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 | #include
18 |
19 | void mp_clear_multi(mp_int *mp, ...)
20 | {
21 | mp_int* next_mp = mp;
22 | va_list args;
23 | va_start(args, mp);
24 | while (next_mp != NULL) {
25 | mp_clear(next_mp);
26 | next_mp = va_arg(args, mp_int*);
27 | }
28 | va_end(args);
29 | }
30 | #endif
31 |
32 | /* $Source: /cvs/libtom/libtommath/bn_mp_clear_multi.c,v $ */
33 | /* $Revision: 1.4 $ */
34 | /* $Date: 2006/12/28 01:25:13 $ */
35 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_cmp.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_CMP_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* compare two ints (signed)*/
19 | int
20 | mp_cmp (mp_int * a, mp_int * b)
21 | {
22 | /* compare based on sign */
23 | if (a->sign != b->sign) {
24 | if (a->sign == MP_NEG) {
25 | return MP_LT;
26 | } else {
27 | return MP_GT;
28 | }
29 | }
30 |
31 | /* compare digits */
32 | if (a->sign == MP_NEG) {
33 | /* if negative compare opposite direction */
34 | return mp_cmp_mag(b, a);
35 | } else {
36 | return mp_cmp_mag(a, b);
37 | }
38 | }
39 | #endif
40 |
41 | /* $Source: /cvs/libtom/libtommath/bn_mp_cmp.c,v $ */
42 | /* $Revision: 1.4 $ */
43 | /* $Date: 2006/12/28 01:25:13 $ */
44 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_cmp_d.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_CMP_D_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* compare a digit */
19 | int mp_cmp_d(mp_int * a, mp_digit b)
20 | {
21 | /* compare based on sign */
22 | if (a->sign == MP_NEG) {
23 | return MP_LT;
24 | }
25 |
26 | /* compare based on magnitude */
27 | if (a->used > 1) {
28 | return MP_GT;
29 | }
30 |
31 | /* compare the only digit of a to b */
32 | if (a->dp[0] > b) {
33 | return MP_GT;
34 | } else if (a->dp[0] < b) {
35 | return MP_LT;
36 | } else {
37 | return MP_EQ;
38 | }
39 | }
40 | #endif
41 |
42 | /* $Source: /cvs/libtom/libtommath/bn_mp_cmp_d.c,v $ */
43 | /* $Revision: 1.4 $ */
44 | /* $Date: 2006/12/28 01:25:13 $ */
45 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_count_bits.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_COUNT_BITS_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* returns the number of bits in an int */
19 | int
20 | mp_count_bits (mp_int * a)
21 | {
22 | int r;
23 | mp_digit q;
24 |
25 | /* shortcut */
26 | if (a->used == 0) {
27 | return 0;
28 | }
29 |
30 | /* get number of digits and add that */
31 | r = (a->used - 1) * DIGIT_BIT;
32 |
33 | /* take the last digit and count the bits in it */
34 | q = a->dp[a->used - 1];
35 | while (q > ((mp_digit) 0)) {
36 | ++r;
37 | q >>= ((mp_digit) 1);
38 | }
39 | return r;
40 | }
41 | #endif
42 |
43 | /* $Source: /cvs/libtom/libtommath/bn_mp_count_bits.c,v $ */
44 | /* $Revision: 1.4 $ */
45 | /* $Date: 2006/12/28 01:25:13 $ */
46 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_dr_is_modulus.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_DR_IS_MODULUS_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* determines if a number is a valid DR modulus */
19 | int mp_dr_is_modulus(mp_int *a)
20 | {
21 | int ix;
22 |
23 | /* must be at least two digits */
24 | if (a->used < 2) {
25 | return 0;
26 | }
27 |
28 | /* must be of the form b**k - a [a <= b] so all
29 | * but the first digit must be equal to -1 (mod b).
30 | */
31 | for (ix = 1; ix < a->used; ix++) {
32 | if (a->dp[ix] != MP_MASK) {
33 | return 0;
34 | }
35 | }
36 | return 1;
37 | }
38 |
39 | #endif
40 |
41 | /* $Source: /cvs/libtom/libtommath/bn_mp_dr_is_modulus.c,v $ */
42 | /* $Revision: 1.4 $ */
43 | /* $Date: 2006/12/28 01:25:13 $ */
44 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_dr_setup.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_DR_SETUP_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* determines the setup value */
19 | void mp_dr_setup(mp_int *a, mp_digit *d)
20 | {
21 | /* the casts are required if DIGIT_BIT is one less than
22 | * the number of bits in a mp_digit [e.g. DIGIT_BIT==31]
23 | */
24 | *d = (mp_digit)((((mp_word)1) << ((mp_word)DIGIT_BIT)) -
25 | ((mp_word)a->dp[0]));
26 | }
27 |
28 | #endif
29 |
30 | /* $Source: /cvs/libtom/libtommath/bn_mp_dr_setup.c,v $ */
31 | /* $Revision: 1.4 $ */
32 | /* $Date: 2006/12/28 01:25:13 $ */
33 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_exch.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_EXCH_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* swap the elements of two integers, for cases where you can't simply swap the
19 | * mp_int pointers around
20 | */
21 | void
22 | mp_exch (mp_int * a, mp_int * b)
23 | {
24 | mp_int t;
25 |
26 | t = *a;
27 | *a = *b;
28 | *b = t;
29 | }
30 | #endif
31 |
32 | /* $Source: /cvs/libtom/libtommath/bn_mp_exch.c,v $ */
33 | /* $Revision: 1.4 $ */
34 | /* $Date: 2006/12/28 01:25:13 $ */
35 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_fwrite.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_FWRITE_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | int mp_fwrite(mp_int *a, int radix, FILE *stream)
19 | {
20 | char *buf;
21 | int err, len, x;
22 |
23 | if ((err = mp_radix_size(a, radix, &len)) != MP_OKAY) {
24 | return err;
25 | }
26 |
27 | buf = OPT_CAST(char) XMALLOC (len);
28 | if (buf == NULL) {
29 | return MP_MEM;
30 | }
31 |
32 | if ((err = mp_toradix(a, buf, radix)) != MP_OKAY) {
33 | XFREE (buf);
34 | return err;
35 | }
36 |
37 | for (x = 0; x < len; x++) {
38 | if (fputc(buf[x], stream) == EOF) {
39 | XFREE (buf);
40 | return MP_VAL;
41 | }
42 | }
43 |
44 | XFREE (buf);
45 | return MP_OKAY;
46 | }
47 |
48 | #endif
49 |
50 | /* $Source: /cvs/libtom/libtommath/bn_mp_fwrite.c,v $ */
51 | /* $Revision: 1.4 $ */
52 | /* $Date: 2006/12/28 01:25:13 $ */
53 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_get_int.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_GET_INT_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* get the lower 32-bits of an mp_int */
19 | unsigned long mp_get_int(mp_int * a)
20 | {
21 | int i;
22 | unsigned long res;
23 |
24 | if (a->used == 0) {
25 | return 0;
26 | }
27 |
28 | /* get number of digits of the lsb we have to read */
29 | i = MIN(a->used,(int)((sizeof(unsigned long)*CHAR_BIT+DIGIT_BIT-1)/DIGIT_BIT))-1;
30 |
31 | /* get most significant digit of result */
32 | res = DIGIT(a,i);
33 |
34 | while (--i >= 0) {
35 | res = (res << DIGIT_BIT) | DIGIT(a,i);
36 | }
37 |
38 | /* force result to 32-bits always so it is consistent on non 32-bit platforms */
39 | return res & 0xFFFFFFFFUL;
40 | }
41 | #endif
42 |
43 | /* $Source: /cvs/libtom/libtommath/bn_mp_get_int.c,v $ */
44 | /* $Revision: 1.4 $ */
45 | /* $Date: 2006/12/28 01:25:13 $ */
46 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_init.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_INIT_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* init a new mp_int */
19 | int mp_init (mp_int * a)
20 | {
21 | int i;
22 |
23 | /* allocate memory required and clear it */
24 | a->dp = OPT_CAST(mp_digit) XMALLOC (sizeof (mp_digit) * MP_PREC);
25 | if (a->dp == NULL) {
26 | return MP_MEM;
27 | }
28 |
29 | /* set the digits to zero */
30 | for (i = 0; i < MP_PREC; i++) {
31 | a->dp[i] = 0;
32 | }
33 |
34 | /* set the used to zero, allocated digits to the default precision
35 | * and sign to positive */
36 | a->used = 0;
37 | a->alloc = MP_PREC;
38 | a->sign = MP_ZPOS;
39 |
40 | return MP_OKAY;
41 | }
42 | #endif
43 |
44 | /* $Source: /cvs/libtom/libtommath/bn_mp_init.c,v $ */
45 | /* $Revision: 1.4 $ */
46 | /* $Date: 2006/12/28 01:25:13 $ */
47 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_init_copy.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_INIT_COPY_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* creates "a" then copies b into it */
19 | int mp_init_copy (mp_int * a, mp_int * b)
20 | {
21 | int res;
22 |
23 | if ((res = mp_init (a)) != MP_OKAY) {
24 | return res;
25 | }
26 | return mp_copy (b, a);
27 | }
28 | #endif
29 |
30 | /* $Source: /cvs/libtom/libtommath/bn_mp_init_copy.c,v $ */
31 | /* $Revision: 1.4 $ */
32 | /* $Date: 2006/12/28 01:25:13 $ */
33 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_init_set.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_INIT_SET_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* initialize and set a digit */
19 | int mp_init_set (mp_int * a, mp_digit b)
20 | {
21 | int err;
22 | if ((err = mp_init(a)) != MP_OKAY) {
23 | return err;
24 | }
25 | mp_set(a, b);
26 | return err;
27 | }
28 | #endif
29 |
30 | /* $Source: /cvs/libtom/libtommath/bn_mp_init_set.c,v $ */
31 | /* $Revision: 1.4 $ */
32 | /* $Date: 2006/12/28 01:25:13 $ */
33 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_init_set_int.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_INIT_SET_INT_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* initialize and set a digit */
19 | int mp_init_set_int (mp_int * a, unsigned long b)
20 | {
21 | int err;
22 | if ((err = mp_init(a)) != MP_OKAY) {
23 | return err;
24 | }
25 | return mp_set_int(a, b);
26 | }
27 | #endif
28 |
29 | /* $Source: /cvs/libtom/libtommath/bn_mp_init_set_int.c,v $ */
30 | /* $Revision: 1.4 $ */
31 | /* $Date: 2006/12/28 01:25:13 $ */
32 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_init_size.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_INIT_SIZE_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* init an mp_init for a given size */
19 | int mp_init_size (mp_int * a, int size)
20 | {
21 | int x;
22 |
23 | /* pad size so there are always extra digits */
24 | size += (MP_PREC * 2) - (size % MP_PREC);
25 |
26 | /* alloc mem */
27 | a->dp = OPT_CAST(mp_digit) XMALLOC (sizeof (mp_digit) * size);
28 | if (a->dp == NULL) {
29 | return MP_MEM;
30 | }
31 |
32 | /* set the members */
33 | a->used = 0;
34 | a->alloc = size;
35 | a->sign = MP_ZPOS;
36 |
37 | /* zero the digits */
38 | for (x = 0; x < size; x++) {
39 | a->dp[x] = 0;
40 | }
41 |
42 | return MP_OKAY;
43 | }
44 | #endif
45 |
46 | /* $Source: /cvs/libtom/libtommath/bn_mp_init_size.c,v $ */
47 | /* $Revision: 1.4 $ */
48 | /* $Date: 2006/12/28 01:25:13 $ */
49 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_invmod.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_INVMOD_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* hac 14.61, pp608 */
19 | int mp_invmod (mp_int * a, mp_int * b, mp_int * c)
20 | {
21 | /* b cannot be negative */
22 | if (b->sign == MP_NEG || mp_iszero(b) == 1) {
23 | return MP_VAL;
24 | }
25 |
26 | #ifdef BN_FAST_MP_INVMOD_C
27 | /* if the modulus is odd we can use a faster routine instead */
28 | if (mp_isodd (b) == 1) {
29 | return fast_mp_invmod (a, b, c);
30 | }
31 | #endif
32 |
33 | #ifdef BN_MP_INVMOD_SLOW_C
34 | return mp_invmod_slow(a, b, c);
35 | #endif
36 |
37 | return MP_VAL;
38 | }
39 | #endif
40 |
41 | /* $Source: /cvs/libtom/libtommath/bn_mp_invmod.c,v $ */
42 | /* $Revision: 1.4 $ */
43 | /* $Date: 2006/12/28 01:25:13 $ */
44 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_mod.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_MOD_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* c = a mod b, 0 <= c < b */
19 | int
20 | mp_mod (mp_int * a, mp_int * b, mp_int * c)
21 | {
22 | mp_int t;
23 | int res;
24 |
25 | if ((res = mp_init (&t)) != MP_OKAY) {
26 | return res;
27 | }
28 |
29 | if ((res = mp_div (a, b, NULL, &t)) != MP_OKAY) {
30 | mp_clear (&t);
31 | return res;
32 | }
33 |
34 | if (t.sign != b->sign) {
35 | res = mp_add (b, &t, c);
36 | } else {
37 | res = MP_OKAY;
38 | mp_exch (&t, c);
39 | }
40 |
41 | mp_clear (&t);
42 | return res;
43 | }
44 | #endif
45 |
46 | /* $Source: /cvs/libtom/libtommath/bn_mp_mod.c,v $ */
47 | /* $Revision: 1.4 $ */
48 | /* $Date: 2006/12/28 01:25:13 $ */
49 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_mod_d.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_MOD_D_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | int
19 | mp_mod_d (mp_int * a, mp_digit b, mp_digit * c)
20 | {
21 | return mp_div_d(a, b, NULL, c);
22 | }
23 | #endif
24 |
25 | /* $Source: /cvs/libtom/libtommath/bn_mp_mod_d.c,v $ */
26 | /* $Revision: 1.4 $ */
27 | /* $Date: 2006/12/28 01:25:13 $ */
28 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_mulmod.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_MULMOD_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* d = a * b (mod c) */
19 | int mp_mulmod (mp_int * a, mp_int * b, mp_int * c, mp_int * d)
20 | {
21 | int res;
22 | mp_int t;
23 |
24 | if ((res = mp_init (&t)) != MP_OKAY) {
25 | return res;
26 | }
27 |
28 | if ((res = mp_mul (a, b, &t)) != MP_OKAY) {
29 | mp_clear (&t);
30 | return res;
31 | }
32 | res = mp_mod (&t, c, d);
33 | mp_clear (&t);
34 | return res;
35 | }
36 | #endif
37 |
38 | /* $Source: /cvs/libtom/libtommath/bn_mp_mulmod.c,v $ */
39 | /* $Revision: 1.5 $ */
40 | /* $Date: 2006/12/28 01:25:13 $ */
41 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_neg.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_NEG_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* b = -a */
19 | int mp_neg (mp_int * a, mp_int * b)
20 | {
21 | int res;
22 | if (a != b) {
23 | if ((res = mp_copy (a, b)) != MP_OKAY) {
24 | return res;
25 | }
26 | }
27 |
28 | if (mp_iszero(b) != MP_YES) {
29 | b->sign = (a->sign == MP_ZPOS) ? MP_NEG : MP_ZPOS;
30 | } else {
31 | b->sign = MP_ZPOS;
32 | }
33 |
34 | return MP_OKAY;
35 | }
36 | #endif
37 |
38 | /* $Source: /cvs/libtom/libtommath/bn_mp_neg.c,v $ */
39 | /* $Revision: 1.4 $ */
40 | /* $Date: 2006/12/28 01:25:13 $ */
41 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_or.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_OR_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* OR two ints together */
19 | int mp_or (mp_int * a, mp_int * b, mp_int * c)
20 | {
21 | int res, ix, px;
22 | mp_int t, *x;
23 |
24 | if (a->used > b->used) {
25 | if ((res = mp_init_copy (&t, a)) != MP_OKAY) {
26 | return res;
27 | }
28 | px = b->used;
29 | x = b;
30 | } else {
31 | if ((res = mp_init_copy (&t, b)) != MP_OKAY) {
32 | return res;
33 | }
34 | px = a->used;
35 | x = a;
36 | }
37 |
38 | for (ix = 0; ix < px; ix++) {
39 | t.dp[ix] |= x->dp[ix];
40 | }
41 | mp_clamp (&t);
42 | mp_exch (c, &t);
43 | mp_clear (&t);
44 | return MP_OKAY;
45 | }
46 | #endif
47 |
48 | /* $Source: /cvs/libtom/libtommath/bn_mp_or.c,v $ */
49 | /* $Revision: 1.4 $ */
50 | /* $Date: 2006/12/28 01:25:13 $ */
51 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_radix_smap.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_RADIX_SMAP_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* chars used in radix conversions */
19 | const char *mp_s_rmap = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz+/";
20 | #endif
21 |
22 | /* $Source: /cvs/libtom/libtommath/bn_mp_radix_smap.c,v $ */
23 | /* $Revision: 1.4 $ */
24 | /* $Date: 2006/12/28 01:25:13 $ */
25 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_read_signed_bin.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_READ_SIGNED_BIN_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* read signed bin, big endian, first byte is 0==positive or 1==negative */
19 | int mp_read_signed_bin (mp_int * a, const unsigned char *b, int c)
20 | {
21 | int res;
22 |
23 | /* read magnitude */
24 | if ((res = mp_read_unsigned_bin (a, b + 1, c - 1)) != MP_OKAY) {
25 | return res;
26 | }
27 |
28 | /* first byte is 0 for positive, non-zero for negative */
29 | if (b[0] == 0) {
30 | a->sign = MP_ZPOS;
31 | } else {
32 | a->sign = MP_NEG;
33 | }
34 |
35 | return MP_OKAY;
36 | }
37 | #endif
38 |
39 | /* $Source: /cvs/libtom/libtommath/bn_mp_read_signed_bin.c,v $ */
40 | /* $Revision: 1.5 $ */
41 | /* $Date: 2006/12/28 01:25:13 $ */
42 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_reduce_2k_setup.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_REDUCE_2K_SETUP_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* determines the setup value */
19 | int mp_reduce_2k_setup(mp_int *a, mp_digit *d)
20 | {
21 | int res, p;
22 | mp_int tmp;
23 |
24 | if ((res = mp_init(&tmp)) != MP_OKAY) {
25 | return res;
26 | }
27 |
28 | p = mp_count_bits(a);
29 | if ((res = mp_2expt(&tmp, p)) != MP_OKAY) {
30 | mp_clear(&tmp);
31 | return res;
32 | }
33 |
34 | if ((res = s_mp_sub(&tmp, a, &tmp)) != MP_OKAY) {
35 | mp_clear(&tmp);
36 | return res;
37 | }
38 |
39 | *d = tmp.dp[0];
40 | mp_clear(&tmp);
41 | return MP_OKAY;
42 | }
43 | #endif
44 |
45 | /* $Source: /cvs/libtom/libtommath/bn_mp_reduce_2k_setup.c,v $ */
46 | /* $Revision: 1.4 $ */
47 | /* $Date: 2006/12/28 01:25:13 $ */
48 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_reduce_2k_setup_l.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_REDUCE_2K_SETUP_L_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* determines the setup value */
19 | int mp_reduce_2k_setup_l(mp_int *a, mp_int *d)
20 | {
21 | int res;
22 | mp_int tmp;
23 |
24 | if ((res = mp_init(&tmp)) != MP_OKAY) {
25 | return res;
26 | }
27 |
28 | if ((res = mp_2expt(&tmp, mp_count_bits(a))) != MP_OKAY) {
29 | goto ERR;
30 | }
31 |
32 | if ((res = s_mp_sub(&tmp, a, d)) != MP_OKAY) {
33 | goto ERR;
34 | }
35 |
36 | ERR:
37 | mp_clear(&tmp);
38 | return res;
39 | }
40 | #endif
41 |
42 | /* $Source: /cvs/libtom/libtommath/bn_mp_reduce_2k_setup_l.c,v $ */
43 | /* $Revision: 1.4 $ */
44 | /* $Date: 2006/12/28 01:25:13 $ */
45 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_reduce_is_2k_l.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_REDUCE_IS_2K_L_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* determines if reduce_2k_l can be used */
19 | int mp_reduce_is_2k_l(mp_int *a)
20 | {
21 | int ix, iy;
22 |
23 | if (a->used == 0) {
24 | return MP_NO;
25 | } else if (a->used == 1) {
26 | return MP_YES;
27 | } else if (a->used > 1) {
28 | /* if more than half of the digits are -1 we're sold */
29 | for (iy = ix = 0; ix < a->used; ix++) {
30 | if (a->dp[ix] == MP_MASK) {
31 | ++iy;
32 | }
33 | }
34 | return (iy >= (a->used/2)) ? MP_YES : MP_NO;
35 |
36 | }
37 | return MP_NO;
38 | }
39 |
40 | #endif
41 |
42 | /* $Source: /cvs/libtom/libtommath/bn_mp_reduce_is_2k_l.c,v $ */
43 | /* $Revision: 1.4 $ */
44 | /* $Date: 2006/12/28 01:25:13 $ */
45 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_reduce_setup.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_REDUCE_SETUP_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* pre-calculate the value required for Barrett reduction
19 | * For a given modulus "b" it calulates the value required in "a"
20 | */
21 | int mp_reduce_setup (mp_int * a, mp_int * b)
22 | {
23 | int res;
24 |
25 | if ((res = mp_2expt (a, b->used * 2 * DIGIT_BIT)) != MP_OKAY) {
26 | return res;
27 | }
28 | return mp_div (a, b, a, NULL);
29 | }
30 | #endif
31 |
32 | /* $Source: /cvs/libtom/libtommath/bn_mp_reduce_setup.c,v $ */
33 | /* $Revision: 1.4 $ */
34 | /* $Date: 2006/12/28 01:25:13 $ */
35 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_set.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_SET_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* set to a digit */
19 | void mp_set (mp_int * a, mp_digit b)
20 | {
21 | mp_zero (a);
22 | a->dp[0] = b & MP_MASK;
23 | a->used = (a->dp[0] != 0) ? 1 : 0;
24 | }
25 | #endif
26 |
27 | /* $Source: /cvs/libtom/libtommath/bn_mp_set.c,v $ */
28 | /* $Revision: 1.4 $ */
29 | /* $Date: 2006/12/28 01:25:13 $ */
30 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_set_int.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_SET_INT_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* set a 32-bit const */
19 | int mp_set_int (mp_int * a, unsigned long b)
20 | {
21 | int x, res;
22 |
23 | mp_zero (a);
24 |
25 | /* set four bits at a time */
26 | for (x = 0; x < 8; x++) {
27 | /* shift the number up four bits */
28 | if ((res = mp_mul_2d (a, 4, a)) != MP_OKAY) {
29 | return res;
30 | }
31 |
32 | /* OR in the top four bits of the source */
33 | a->dp[0] |= (b >> 28) & 15;
34 |
35 | /* shift the source up to the next four bits */
36 | b <<= 4;
37 |
38 | /* ensure that digits are not clamped off */
39 | a->used += 1;
40 | }
41 | mp_clamp (a);
42 | return MP_OKAY;
43 | }
44 | #endif
45 |
46 | /* $Source: /cvs/libtom/libtommath/bn_mp_set_int.c,v $ */
47 | /* $Revision: 1.4 $ */
48 | /* $Date: 2006/12/28 01:25:13 $ */
49 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_shrink.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_SHRINK_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* shrink a bignum */
19 | int mp_shrink (mp_int * a)
20 | {
21 | mp_digit *tmp;
22 | if (a->alloc != a->used && a->used > 0) {
23 | if ((tmp = OPT_CAST(mp_digit) XREALLOC (a->dp, sizeof (mp_digit) * a->used)) == NULL) {
24 | return MP_MEM;
25 | }
26 | a->dp = tmp;
27 | a->alloc = a->used;
28 | }
29 | return MP_OKAY;
30 | }
31 | #endif
32 |
33 | /* $Source: /cvs/libtom/libtommath/bn_mp_shrink.c,v $ */
34 | /* $Revision: 1.4 $ */
35 | /* $Date: 2006/12/28 01:25:13 $ */
36 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_signed_bin_size.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_SIGNED_BIN_SIZE_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* get the size for an signed equivalent */
19 | int mp_signed_bin_size (mp_int * a)
20 | {
21 | return 1 + mp_unsigned_bin_size (a);
22 | }
23 | #endif
24 |
25 | /* $Source: /cvs/libtom/libtommath/bn_mp_signed_bin_size.c,v $ */
26 | /* $Revision: 1.4 $ */
27 | /* $Date: 2006/12/28 01:25:13 $ */
28 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_sqrmod.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_SQRMOD_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* c = a * a (mod b) */
19 | int
20 | mp_sqrmod (mp_int * a, mp_int * b, mp_int * c)
21 | {
22 | int res;
23 | mp_int t;
24 |
25 | if ((res = mp_init (&t)) != MP_OKAY) {
26 | return res;
27 | }
28 |
29 | if ((res = mp_sqr (a, &t)) != MP_OKAY) {
30 | mp_clear (&t);
31 | return res;
32 | }
33 | res = mp_mod (&t, b, c);
34 | mp_clear (&t);
35 | return res;
36 | }
37 | #endif
38 |
39 | /* $Source: /cvs/libtom/libtommath/bn_mp_sqrmod.c,v $ */
40 | /* $Revision: 1.4 $ */
41 | /* $Date: 2006/12/28 01:25:13 $ */
42 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_submod.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_SUBMOD_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* d = a - b (mod c) */
19 | int
20 | mp_submod (mp_int * a, mp_int * b, mp_int * c, mp_int * d)
21 | {
22 | int res;
23 | mp_int t;
24 |
25 |
26 | if ((res = mp_init (&t)) != MP_OKAY) {
27 | return res;
28 | }
29 |
30 | if ((res = mp_sub (a, b, &t)) != MP_OKAY) {
31 | mp_clear (&t);
32 | return res;
33 | }
34 | res = mp_mod (&t, c, d);
35 | mp_clear (&t);
36 | return res;
37 | }
38 | #endif
39 |
40 | /* $Source: /cvs/libtom/libtommath/bn_mp_submod.c,v $ */
41 | /* $Revision: 1.4 $ */
42 | /* $Date: 2006/12/28 01:25:13 $ */
43 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_to_signed_bin.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_TO_SIGNED_BIN_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* store in signed [big endian] format */
19 | int mp_to_signed_bin (mp_int * a, unsigned char *b)
20 | {
21 | int res;
22 |
23 | if ((res = mp_to_unsigned_bin (a, b + 1)) != MP_OKAY) {
24 | return res;
25 | }
26 | b[0] = (unsigned char) ((a->sign == MP_ZPOS) ? 0 : 1);
27 | return MP_OKAY;
28 | }
29 | #endif
30 |
31 | /* $Source: /cvs/libtom/libtommath/bn_mp_to_signed_bin.c,v $ */
32 | /* $Revision: 1.4 $ */
33 | /* $Date: 2006/12/28 01:25:13 $ */
34 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_to_signed_bin_n.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_TO_SIGNED_BIN_N_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* store in signed [big endian] format */
19 | int mp_to_signed_bin_n (mp_int * a, unsigned char *b, unsigned long *outlen)
20 | {
21 | if (*outlen < (unsigned long)mp_signed_bin_size(a)) {
22 | return MP_VAL;
23 | }
24 | *outlen = mp_signed_bin_size(a);
25 | return mp_to_signed_bin(a, b);
26 | }
27 | #endif
28 |
29 | /* $Source: /cvs/libtom/libtommath/bn_mp_to_signed_bin_n.c,v $ */
30 | /* $Revision: 1.4 $ */
31 | /* $Date: 2006/12/28 01:25:13 $ */
32 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_to_unsigned_bin.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_TO_UNSIGNED_BIN_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* store in unsigned [big endian] format */
19 | int mp_to_unsigned_bin (mp_int * a, unsigned char *b)
20 | {
21 | int x, res;
22 | mp_int t;
23 |
24 | if ((res = mp_init_copy (&t, a)) != MP_OKAY) {
25 | return res;
26 | }
27 |
28 | x = 0;
29 | while (mp_iszero (&t) == 0) {
30 | #ifndef MP_8BIT
31 | b[x++] = (unsigned char) (t.dp[0] & 255);
32 | #else
33 | b[x++] = (unsigned char) (t.dp[0] | ((t.dp[1] & 0x01) << 7));
34 | #endif
35 | if ((res = mp_div_2d (&t, 8, &t, NULL)) != MP_OKAY) {
36 | mp_clear (&t);
37 | return res;
38 | }
39 | }
40 | bn_reverse (b, x);
41 | mp_clear (&t);
42 | return MP_OKAY;
43 | }
44 | #endif
45 |
46 | /* $Source: /cvs/libtom/libtommath/bn_mp_to_unsigned_bin.c,v $ */
47 | /* $Revision: 1.4 $ */
48 | /* $Date: 2006/12/28 01:25:13 $ */
49 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_to_unsigned_bin_n.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_TO_UNSIGNED_BIN_N_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* store in unsigned [big endian] format */
19 | int mp_to_unsigned_bin_n (mp_int * a, unsigned char *b, unsigned long *outlen)
20 | {
21 | if (*outlen < (unsigned long)mp_unsigned_bin_size(a)) {
22 | return MP_VAL;
23 | }
24 | *outlen = mp_unsigned_bin_size(a);
25 | return mp_to_unsigned_bin(a, b);
26 | }
27 | #endif
28 |
29 | /* $Source: /cvs/libtom/libtommath/bn_mp_to_unsigned_bin_n.c,v $ */
30 | /* $Revision: 1.4 $ */
31 | /* $Date: 2006/12/28 01:25:13 $ */
32 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_unsigned_bin_size.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_UNSIGNED_BIN_SIZE_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* get the size for an unsigned equivalent */
19 | int mp_unsigned_bin_size (mp_int * a)
20 | {
21 | int size = mp_count_bits (a);
22 | return (size / 8 + ((size & 7) != 0 ? 1 : 0));
23 | }
24 | #endif
25 |
26 | /* $Source: /cvs/libtom/libtommath/bn_mp_unsigned_bin_size.c,v $ */
27 | /* $Revision: 1.4 $ */
28 | /* $Date: 2006/12/28 01:25:13 $ */
29 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_xor.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_XOR_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* XOR two ints together */
19 | int
20 | mp_xor (mp_int * a, mp_int * b, mp_int * c)
21 | {
22 | int res, ix, px;
23 | mp_int t, *x;
24 |
25 | if (a->used > b->used) {
26 | if ((res = mp_init_copy (&t, a)) != MP_OKAY) {
27 | return res;
28 | }
29 | px = b->used;
30 | x = b;
31 | } else {
32 | if ((res = mp_init_copy (&t, b)) != MP_OKAY) {
33 | return res;
34 | }
35 | px = a->used;
36 | x = a;
37 | }
38 |
39 | for (ix = 0; ix < px; ix++) {
40 | t.dp[ix] ^= x->dp[ix];
41 | }
42 | mp_clamp (&t);
43 | mp_exch (c, &t);
44 | mp_clear (&t);
45 | return MP_OKAY;
46 | }
47 | #endif
48 |
49 | /* $Source: /cvs/libtom/libtommath/bn_mp_xor.c,v $ */
50 | /* $Revision: 1.4 $ */
51 | /* $Date: 2006/12/28 01:25:13 $ */
52 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_mp_zero.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_MP_ZERO_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* set to zero */
19 | void mp_zero (mp_int * a)
20 | {
21 | int n;
22 | mp_digit *tmp;
23 |
24 | a->sign = MP_ZPOS;
25 | a->used = 0;
26 |
27 | tmp = a->dp;
28 | for (n = 0; n < a->alloc; n++) {
29 | *tmp++ = 0;
30 | }
31 | }
32 | #endif
33 |
34 | /* $Source: /cvs/libtom/libtommath/bn_mp_zero.c,v $ */
35 | /* $Revision: 1.4 $ */
36 | /* $Date: 2006/12/28 01:25:13 $ */
37 |
--------------------------------------------------------------------------------
/StormLib/src/libtommath/bn_reverse.c:
--------------------------------------------------------------------------------
1 | #include "tommath.h"
2 | #ifdef BN_REVERSE_C
3 | /* LibTomMath, multiple-precision integer library -- Tom St Denis
4 | *
5 | * LibTomMath is a library that provides multiple-precision
6 | * integer arithmetic as well as number theoretic functionality.
7 | *
8 | * The library was designed directly after the MPI library by
9 | * Michael Fromberger but has been written from scratch with
10 | * additional optimizations in place.
11 | *
12 | * The library is free for all purposes without any express
13 | * guarantee it works.
14 | *
15 | * Tom St Denis, tomstdenis@gmail.com, http://libtom.org
16 | */
17 |
18 | /* reverse an array, used for radix code */
19 | void
20 | bn_reverse (unsigned char *s, int len)
21 | {
22 | int ix, iy;
23 | unsigned char t;
24 |
25 | ix = 0;
26 | iy = len - 1;
27 | while (ix < iy) {
28 | t = s[ix];
29 | s[ix] = s[iy];
30 | s[iy] = t;
31 | ++ix;
32 | --iy;
33 | }
34 | }
35 | #endif
36 |
37 | /* $Source: /cvs/libtom/libtommath/bn_reverse.c,v $ */
38 | /* $Revision: 1.4 $ */
39 | /* $Date: 2006/12/28 01:25:13 $ */
40 |
--------------------------------------------------------------------------------
/StormLib/src/lzma/info.txt:
--------------------------------------------------------------------------------
1 | Taken from LZMA SDK v 9.11
--------------------------------------------------------------------------------
/StormLib/src/resource.h:
--------------------------------------------------------------------------------
1 | //{{NO_DEPENDENCIES}}
2 | // Microsoft Visual C++ generated include file.
3 | // Used by DllMain.rc
4 | //
5 |
6 | // Next default values for new objects
7 | //
8 | #ifdef APSTUDIO_INVOKED
9 | #ifndef APSTUDIO_READONLY_SYMBOLS
10 | #define _APS_NEXT_RESOURCE_VALUE 101
11 | #define _APS_NEXT_COMMAND_VALUE 40001
12 | #define _APS_NEXT_CONTROL_VALUE 1000
13 | #define _APS_NEXT_SYMED_VALUE 101
14 | #endif
15 | #endif
16 |
--------------------------------------------------------------------------------
/StormLib/src/sparse/sparse.h:
--------------------------------------------------------------------------------
1 | /*****************************************************************************/
2 | /* sparse.h Copyright (c) Ladislav Zezula 2010 */
3 | /*---------------------------------------------------------------------------*/
4 | /* implementation of Sparse compression, used in Starcraft II */
5 | /*---------------------------------------------------------------------------*/
6 | /* Date Ver Who Comment */
7 | /* -------- ---- --- ------- */
8 | /* 05.03.10 1.00 Lad The first version of sparse.h */
9 | /*****************************************************************************/
10 |
11 | #ifndef __SPARSE_H__
12 | #define __SPARSE_H__
13 |
14 | void CompressSparse(void * pvOutBuffer, int * pcbOutBuffer, void * pvInBuffer, int cbInBuffer);
15 | int DecompressSparse(void * pvOutBuffer, int * pcbOutBuffer, void * pvInBuffer, int cbInBuffer);
16 |
17 | #endif // __SPARSE_H__
18 |
--------------------------------------------------------------------------------
/StormLib/src/wdk/sources-cpp.cpp:
--------------------------------------------------------------------------------
1 | // This is a source file for WDK build of StormLib
2 | // It is copied to the root folder during the build process
3 |
4 | #include "src\adpcm\adpcm.cpp"
5 | #include "src\huffman\huff.cpp"
6 | #include "src\sparse\sparse.cpp"
7 |
8 | #include "src\FileStream.cpp"
9 | #include "src\SBaseCommon.cpp"
10 | #include "src\SBaseDumpData.cpp"
11 | #include "src\SBaseFileTable.cpp"
12 | #include "src\SBaseSubTypes.cpp"
13 | #include "src\SCompression.cpp"
14 | #include "src\SFileAddFile.cpp"
15 | #include "src\SFileAttributes.cpp"
16 | #include "src\SFileCompactArchive.cpp"
17 | #include "src\SFileCreateArchive.cpp"
18 | #include "src\SFileExtractFile.cpp"
19 | #include "src\SFileFindFile.cpp"
20 | #include "src\SFileGetFileInfo.cpp"
21 | #include "src\SFileListFile.cpp"
22 | #include "src\SFileOpenArchive.cpp"
23 | #include "src\SFileOpenFileEx.cpp"
24 | #include "src\SFilePatchArchives.cpp"
25 | #include "src\SFileReadFile.cpp"
26 | #include "src\SFileVerify.cpp"
27 |
--------------------------------------------------------------------------------
/StormLib/src/wdk/sources-wdk-bzip2.c:
--------------------------------------------------------------------------------
1 | // This is a source file for WDK build of StormLib
2 | // It is copied to the root folder during the build process
3 |
4 | #pragma warning(disable: 4242) // '=' : conversion from 'Int32' to 'UChar', possible loss of data
5 | #pragma warning(disable: 4244) // '=' : conversion from '__int64' to 'Int32', possible loss of data
6 |
7 | #include "src\bzip2\blocksort.c"
8 | #include "src\bzip2\bzlib.c"
9 | #include "src\bzip2\compress.c"
10 | #include "src\bzip2\crctable.c"
11 | #include "src\bzip2\decompress.c"
12 | #include "src\bzip2\huffman.c"
13 | #include "src\bzip2\randtable.c"
14 |
--------------------------------------------------------------------------------
/StormLib/src/wdk/sources-wdk-ltc.c:
--------------------------------------------------------------------------------
1 | // This is a source file for WDK build of StormLib
2 | // It is copied to the root folder during the build process
3 |
4 | #include "src\libtomcrypt\src\math\ltm_desc.c"
5 |
--------------------------------------------------------------------------------
/StormLib/src/wdk/sources-wdk-lzma.c:
--------------------------------------------------------------------------------
1 | // This is a source file for WDK build of StormLib
2 | // It is copied to the root folder during the build process
3 |
4 | #include "src\lzma\C\LzFind.c"
5 | #include "src\lzma\C\LzFindMt.c"
6 | #include "src\lzma\C\LzmaDec.c"
7 | #include "src\lzma\C\LzmaEnc.c"
8 | #include "src\lzma\C\Threads.c"
9 |
--------------------------------------------------------------------------------
/StormLib/src/wdk/sources-wdk-misc.c:
--------------------------------------------------------------------------------
1 | // This is a source file for WDK build of StormLib
2 | // It is copied to the root folder during the build process
3 |
4 | #include "src\jenkins\lookup3.c"
5 | #include "src\pklib\explode.c"
6 | #include "src\pklib\implode.c"
7 |
--------------------------------------------------------------------------------
/StormLib/src/wdk/sources-wdk-zlib.c:
--------------------------------------------------------------------------------
1 | // This is a source file for WDK build of StormLib
2 | // It is copied to the root folder during the build process
3 |
4 | #pragma warning(disable:4242) // deflate.c(1693) : warning C4242: '=' : conversion from 'unsigned int' to 'Bytef', possible loss of data
5 |
6 | #define NO_DUMMY_DECL
7 | #define NO_GZIP
8 | #include "src\zlib\adler32.c"
9 | #undef DO1
10 | #undef DO8
11 | #undef MIN
12 | #include "src\zlib\compress.c"
13 | #include "src\zlib\crc32.c"
14 | #include "src\zlib\deflate.c"
15 | #include "src\zlib\trees.c"
16 | #include "src\zlib\zutil.c"
17 |
18 | #undef COPY // Conflicting definition
19 | #include "src\zlib\inflate.c"
20 | #include "src\zlib\inffast.c"
21 | #include "src\zlib\inftrees.c"
22 |
--------------------------------------------------------------------------------
/StormLib/src/zlib/compress_zlib.c:
--------------------------------------------------------------------------------
1 | // Some compilers (e.g. Visual Studio 2012) don't like the name conflict between
2 | // zlib\compress.c and bzip2\compress.c. This file is plain wrapper for compress.c
3 | // in order to create obj file with a different name.
4 |
5 | #include "compress.c"
6 |
--------------------------------------------------------------------------------
/StormLib/src/zlib/inffast.h:
--------------------------------------------------------------------------------
1 | /* inffast.h -- header to use inffast.c
2 | * Copyright (C) 1995-2003, 2010 Mark Adler
3 | * For conditions of distribution and use, see copyright notice in zlib.h
4 | */
5 |
6 | /* WARNING: this file should *not* be used by applications. It is
7 | part of the implementation of the compression library and is
8 | subject to change. Applications should only use zlib.h.
9 | */
10 |
11 | void ZLIB_INTERNAL inflate_fast OF((z_streamp strm, unsigned start));
12 |
--------------------------------------------------------------------------------
/StormLib/storm_dll/storm.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/StormLib/storm_dll/storm.lib
--------------------------------------------------------------------------------
/StormLib/storm_dll/storm_dll.def:
--------------------------------------------------------------------------------
1 | ; Storm definition file with alternate Storm.dll names
2 | LIBRARY "Storm"
3 |
4 | EXPORTS
5 | StormCloseArchive @252 ; 0x0FC
6 | StormCloseFile @253 ; 0x0FD
7 | StormDestroy @262 ; 0x106
8 | StormGetFileArchive @264 ; 0x108
9 | StormGetFileSize @265 ; 0x109
10 | StormOpenArchive @266 ; 0x10A
11 | StormOpenFile @267 ; 0x10B
12 | StormOpenFileEx @268 ; 0x10C
13 | StormReadFile @269 ; 0x10D
14 | StormSetBasePath @270 ; 0x10E
15 | StormSetFilePointer @271 ; 0x10F
16 | StormSetLocale @272 ; 0x110
17 | StormGetBasePath @273 ; 0x111
18 | StormGetArchiveName @275 ; 0x113
19 | StormGetFileName @276 ; 0x114
20 |
21 | ; StormSetLastError @465 ; 0x
22 |
23 | StormCompress @551 ; 0x227
24 | StormDecompress @552 ; 0x228
25 |
--------------------------------------------------------------------------------
/campaigns/orc-exp/levelx09o_c.sms:
--------------------------------------------------------------------------------
1 | -- Stratagus Map - Single player campaign
2 |
3 | Load("campaigns/orc-exp/levelx09o_c2.sms")
4 |
5 | Briefing(
6 | title,
7 | objectives,
8 | "../campaigns/orc/interface/introscreen5.png",
9 | "campaigns/orc-exp/levelx09o.txt",
10 | {"campaigns/orc-exp/levelx09o-intro1.wav",
11 | "campaigns/orc-exp/levelx09o-intro2.wav"}
12 | )
13 |
14 | -- FIXME: Check if units are destroyed.
15 | AddTrigger(
16 | function() return GetPlayerData(1, "UnitTypesCount", "unit-daemon") == 0 end,
17 | function() return ActionVictory() end)
18 |
19 | AddTrigger(
20 | function() return GetPlayerData(GetThisPlayer(), "TotalNumUnits") == 0 end,
21 | function() return ActionDefeat() end)
22 |
23 | --Units
24 | DefineAllowNormalHumanUnits("AAAAAAAAAAAAAAAA")
25 | DefineAllowExtraHumanUnits("FFFFFFFFFFFFFFFF")
26 | DefineAllowNormalOrcUnits("AAAAAAAAAAAAAAAA")
27 | DefineAllowExtraOrcUnits("FFFFFFFFFFFFFFFF")
28 | DefineAllowSpecialUnits("FFFFFFFFFFFFFFFF")
29 | DefineAllowHumanAlways()
30 | DefineAllowOrcAlways()
31 |
32 | Load("campaigns/orc-exp/levelx09o.sms")
33 |
--------------------------------------------------------------------------------
/cmake/modules/FindStormLib.cmake:
--------------------------------------------------------------------------------
1 | # - Try to find the StormLib library
2 | # Once done this will define
3 | #
4 | # STORMLIB_FOUND - system has StormLib
5 | # STORMLIB_INCLUDE_DIR - the STORMLIB include directory
6 | # STORMLIB_LIBRARY - The STORMLIB library
7 |
8 | # Copyright (c) 2015, cybermind
9 | #
10 | # Redistribution and use is allowed according to the terms of the BSD license.
11 | # For details see the accompanying COPYING-CMAKE-SCRIPTS file.
12 |
13 | if(STORMLIB_INCLUDE_DIR AND STORMLIB_LIBRARY AND (NOT UNIX OR BZIP2_FOUND))
14 | set(STORMLIB_FOUND true)
15 | else()
16 | find_path(STORMLIB_INCLUDE_DIR StormLib.h)
17 | find_library(STORMLIB_LIBRARY NAMES storm)
18 | if (UNIX)
19 | find_package(BZip2)
20 | endif()
21 |
22 | if(STORMLIB_INCLUDE_DIR AND STORMLIB_LIBRARY AND (NOT UNIX OR BZIP2_FOUND))
23 | set(STORMLIB_FOUND true)
24 | message(STATUS "Found StormLib: ${STORMLIB_LIBRARY}")
25 | elseif(UNIX AND NOT BZIP2_FOUND)
26 | set(STORMLIB_FOUND false)
27 | message(STATUS "Could not find BZip2 required for StormLib")
28 | else()
29 | set(STORMLIB_FOUND false)
30 | message(STATUS "Could not find StormLib")
31 | endif()
32 |
33 | mark_as_advanced(STORMLIB_INCLUDE_DIR STORMLIB_LIBRARY)
34 | endif()
35 |
--------------------------------------------------------------------------------
/cmake/modules/FindStratagus.cmake:
--------------------------------------------------------------------------------
1 | # - Try to find the stratagus executable and game headers
2 | # Once done this will define
3 | #
4 | # STRATAGUS_FOUND - system has stratagus
5 | # STRATAGUS - the stratagus executable
6 | # STRATAGUS_INCLUDE_DIR - the stratagus include directory
7 |
8 | # Copyright (c) 2011, Pali Rohár
9 | #
10 | # Redistribution and use is allowed according to the terms of the BSD license.
11 | # For details see the accompanying COPYING-CMAKE-SCRIPTS file.
12 |
13 | if(STRATAGUS AND STRATAGUS_INCLUDE_DIR)
14 | set(STRATAGUS_FOUND true)
15 | else()
16 | find_program(STRATAGUS NAMES stratagus PATH_SUFFIXES games)
17 | find_path(STRATAGUS_INCLUDE_DIR stratagus-game-launcher.h)
18 |
19 | if(STRATAGUS AND STRATAGUS_INCLUDE_DIR)
20 | set(STRATAGUS_FOUND true)
21 | message(STATUS "Found stratagus: ${STRATAGUS}:${STRATAGUS_INCLUDE_DIR}")
22 | else()
23 | set(STRATAGUS_FOUND false)
24 | message(FATAL_ERROR "Could not find stratagus, please set STRATAGUS_INCLUDE_DIR and STRATAGUS")
25 | endif()
26 |
27 | mark_as_advanced(STRATAGUS STRATAGUS_INCLUDE_DIR)
28 | endif()
29 |
--------------------------------------------------------------------------------
/cmake_uninstall.cmake.in:
--------------------------------------------------------------------------------
1 | if(NOT EXISTS "@CMAKE_BINARY_DIR@/install_manifest.txt")
2 | message(FATAL_ERROR "Cannot find install manifest: @CMAKE_BINARY_DIR@/install_manifest.txt")
3 | endif(NOT EXISTS "@CMAKE_BINARY_DIR@/install_manifest.txt")
4 |
5 | file(READ "@CMAKE_BINARY_DIR@/install_manifest.txt" files)
6 | string(REGEX REPLACE "\n" ";" files "${files}")
7 | foreach(file ${files})
8 | message(STATUS "Uninstalling $ENV{DESTDIR}${file}")
9 | if(IS_SYMLINK "$ENV{DESTDIR}${file}" OR EXISTS "$ENV{DESTDIR}${file}")
10 | exec_program(
11 | "@CMAKE_COMMAND@" ARGS "-E remove \"$ENV{DESTDIR}${file}\""
12 | OUTPUT_VARIABLE rm_out
13 | RETURN_VALUE rm_retval
14 | )
15 | if(NOT "${rm_retval}" STREQUAL 0)
16 | message(FATAL_ERROR "Problem when removing $ENV{DESTDIR}${file}")
17 | endif(NOT "${rm_retval}" STREQUAL 0)
18 | else(IS_SYMLINK "$ENV{DESTDIR}${file}" OR EXISTS "$ENV{DESTDIR}${file}")
19 | message(STATUS "File $ENV{DESTDIR}${file} does not exist.")
20 | endif(IS_SYMLINK "$ENV{DESTDIR}${file}" OR EXISTS "$ENV{DESTDIR}${file}")
21 | endforeach(file)
22 |
--------------------------------------------------------------------------------
/contrib/6x12_espruino.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/contrib/6x12_espruino.png
--------------------------------------------------------------------------------
/contrib/black_title.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/contrib/black_title.png
--------------------------------------------------------------------------------
/contrib/cross.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/contrib/cross.png
--------------------------------------------------------------------------------
/contrib/food.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/contrib/food.png
--------------------------------------------------------------------------------
/contrib/health.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/contrib/health.png
--------------------------------------------------------------------------------
/contrib/health2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/contrib/health2.png
--------------------------------------------------------------------------------
/contrib/mana.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/contrib/mana.png
--------------------------------------------------------------------------------
/contrib/mana2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/contrib/mana2.png
--------------------------------------------------------------------------------
/contrib/ore,stone,coal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/contrib/ore,stone,coal.png
--------------------------------------------------------------------------------
/contrib/red_cross.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/contrib/red_cross.png
--------------------------------------------------------------------------------
/contrib/score.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/contrib/score.png
--------------------------------------------------------------------------------
/contrib/workers.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/contrib/workers.png
--------------------------------------------------------------------------------
/debian/compat:
--------------------------------------------------------------------------------
1 | 9
2 |
--------------------------------------------------------------------------------
/debian/control:
--------------------------------------------------------------------------------
1 | Source: wargus
2 | Section: games
3 | Priority: optional
4 | Maintainer: cybermind
5 | Build-Depends: debhelper (>= 7), cmake (>= 2.6), pkg-config, imagemagick,
6 | po-debconf, sharutils, zlib1g-dev, libbz2-dev,
7 | libpng12-dev (>= 1.2.5) | libpng-dev (>= 1.2.5), libbz2-dev,
8 | stratagus-dev
9 | Standards-Version: 3.9.2
10 | Homepage: https://github.com/Wargus/wargus
11 |
12 | Package: wargus
13 | Architecture: any
14 | Depends: ${stratagus:Depends}, ${misc:Depends}, ${shlibs:Depends}
15 | Pre-Depends: cdparanoia, ffmpeg | libav-tools, timgm6mb-soundfont | musescore-soundfont-gm, innoextract
16 | Provides: stratagus-data
17 | Description: Warcraft II data game set for the Stratagus engine
18 | Wargus can be used to play Warcraft II from Blizzard Entertainment.
19 | .
20 | You need the original Warcraft II CD to extract the game data files.
21 | .
22 | Wargus is developed together for Windows, Linux and Mac OS X.
23 |
--------------------------------------------------------------------------------
/debian/copyright:
--------------------------------------------------------------------------------
1 | Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
2 | Source: https://github.com/Wargus/wargus
3 |
4 | Files: *
5 | Copyright:
6 | (c) 1998-2022 by The Stratagus Project
7 | (c) 2002-2007 Jimmy Salmon
8 | (c) 2003-2004 Russel Smith
9 | (c) 2002-2007 Nehal Mistry
10 | (c) 2010-2012 Pali Rohár
11 | (c) 2012-2016 cybermind
12 | License: GPL-2+
13 |
14 | Files: debian/*
15 | Copyright:
16 | (c) 2010-2012 Pali Rohár
17 | (c) 2015 cybermind
18 | (c) 2015 Karol Krenski
19 | License: GPL-2+
20 |
21 | License: GPL-2+
22 | This package is free software; you can redistribute it and/or modify
23 | it under the terms of the GNU General Public License as published by
24 | the Free Software Foundation; either version 2 of the License, or
25 | (at your option) any later version. On Debian systems the GNU General Public
26 | License (GPL) version 2 is located on the filesystem at
27 | /usr/share/common-licenses/GPL-2.
28 |
--------------------------------------------------------------------------------
/debian/docs:
--------------------------------------------------------------------------------
1 | README.md
2 | doc/changelog
3 | doc/pud-specs.txt
4 |
--------------------------------------------------------------------------------
/debian/manpages:
--------------------------------------------------------------------------------
1 | doc/wargus.6
2 | doc/wartool.6
3 | doc/pudconvert.6
4 |
--------------------------------------------------------------------------------
/debian/menu:
--------------------------------------------------------------------------------
1 | ?package(wargus):needs="x11" section="Games/Strategy" title="Wargus - Warcraft II" command="/usr/games/wargus" icon="/usr/share/pixmaps/wargus.xpm"
2 |
--------------------------------------------------------------------------------
/debian/po/POTFILES.in:
--------------------------------------------------------------------------------
1 | [type: gettext/rfc822deb] templates
2 |
--------------------------------------------------------------------------------
/debian/postinst:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | set -e
4 |
5 | . /usr/share/debconf/confmodule
6 |
7 | extract() {
8 | [ -f /usr/share/sounds/sf2/TimGM6mb.sf2 ] && { cp /usr/share/sounds/sf2/TimGM6mb.sf2 /usr/share/games/stratagus/wargus/music; }
9 |
10 | db_stop || true # don't understand this
11 | return $?
12 | }
13 |
14 | if [ "$1" = "configure" ]; then
15 | extract || exit $?
16 | fi
17 |
18 | #DEBHELPER#
19 |
20 | exit 0
21 |
--------------------------------------------------------------------------------
/debian/postrm:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | set -e
4 |
5 | if [ "$1" = "remove" ] || [ "$1" = "purge" ]; then
6 | rm -rf /usr/share/games/stratagus/wargus
7 | fi
8 |
9 | #DEBHELPER#
10 |
11 | exit 0
12 |
--------------------------------------------------------------------------------
/debian/source/format:
--------------------------------------------------------------------------------
1 | 3.0 (native)
2 |
--------------------------------------------------------------------------------
/doc/pudconvert.6:
--------------------------------------------------------------------------------
1 | .TH PUDCONVERT 6 "Aug 2011" "Wargus v2.3"
2 | .SH NAME
3 | pudconvert \- Tool to convert Warcraft II map pud files to Stratagus map format
4 | .SH SYNOPSIS
5 | .B pudconvert
6 | .I "inputfile [outputdir]"
7 | .SH OPTIONS
8 | .TP
9 | .B inputfile
10 | Input Warcraft II pud file
11 | .TP
12 | .B outputdir
13 | Output directory where will be created map files
14 | .SH "SEE ALSO"
15 | .PD 0
16 | .TP
17 | \fIstratagus\fP(6), \fIwargus\fP(6), \fIwartool\fP(6)
18 | .SH NOTES
19 | Warcraft II is a registered trademark of Blizzard Entertainment.
20 | .SH AUTHOR
21 | Pudconvert is part of wartool, which is written by Lutz Sammer, Nehal Mistry, Jimmy Salmon, Pali Rohár and others.
22 | .PP
23 | This manual page was written by Pali Rohár .
24 |
--------------------------------------------------------------------------------
/doc/wartool.6:
--------------------------------------------------------------------------------
1 | .TH WARTOOL 6 "Aug 2011" "Wargus v2.4"
2 | .SH NAME
3 | wartool \- Tool to extract the game data from your Warcraft II CD.
4 | .SH SYNOPSIS
5 | .B wartool
6 | .I "[-e|-n] [-m] [-v] [-r] [-V] [-h] archive-directory [destination-directory]"
7 | .SH OPTIONS
8 | .TP
9 | .B \-e
10 | The archive is expansion compatible (default: autodetect)
11 | .TP
12 | .B \-n
13 | The archive is not expansion compatible (default: autodetect)
14 | .TP
15 | .B \-v
16 | Extract and convert videos
17 | .TP
18 | .B \-r
19 | Rip and sound tracks from CD-ROM (needs original CD, no image/emulation)
20 | .TP
21 | .B \-V
22 | Show version
23 | .TP
24 | .B -h
25 | Show usage
26 | .TP
27 | .B archive-directory
28 | Directory which includes the archives maindat.war...
29 | .TP
30 | .B destination-directory
31 | Directory where the extracted files are placed
32 | .SH "SEE ALSO"
33 | .PD 0
34 | .TP
35 | \fIstratagus\fP(6), \fIwargus\fP(6), \fIpudconvert\fP(6)
36 | .SH NOTES
37 | Warcraft II is a registered trademark of Blizzard Entertainment.
38 | .SH AUTHOR
39 | Wartool is written by Lutz Sammer, Nehal Mistry, Jimmy Salmon, Pali Rohár and others.
40 | .PP
41 | This manual page was written by Pali Rohár .
42 |
--------------------------------------------------------------------------------
/mac/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleGetInfoString
6 | Wargus
7 | CFBundleExecutable
8 | wargus
9 | CFBundleIdentifier
10 | wargus.stratagus.com.github.www
11 | CFBundleName
12 | Wargus
13 | CFBundleIconFile
14 | wargus
15 | CFBundleShortVersionString
16 | 3.3.3
17 | CFBundleInfoDictionaryVersion
18 | 6.0
19 | CFBundlePackageType
20 | APPL
21 | IFMajorVersion
22 | 2
23 | IFMinorVersion
24 | 4
25 |
26 |
27 |
--------------------------------------------------------------------------------
/maps/fl/(8)rockfort-arena.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/fl/(8)rockfort-arena.png
--------------------------------------------------------------------------------
/maps/ftm/(2)forgotten-forest.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/ftm/(2)forgotten-forest.png
--------------------------------------------------------------------------------
/maps/ftm/(2)forgotten-forest.smp:
--------------------------------------------------------------------------------
1 | -- Stratagus Map Presentation
2 | -- File generated by the Stratagus V2.2.7 builtin map editor.
3 | -- File licensed under the GNU GPL version 2.
4 |
5 | DefinePlayerTypes("computer", "computer", "person", "person", "computer")
6 | PresentMap("Forgotten Forest", 2, 64, 256, 1)
7 |
--------------------------------------------------------------------------------
/maps/ftm/(2)mushroom-panic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/ftm/(2)mushroom-panic.png
--------------------------------------------------------------------------------
/maps/ftm/(2)mushroom-panic.smp:
--------------------------------------------------------------------------------
1 | -- Stratagus Map Presentation
2 | -- File generated by the Stratagus V2.3 builtin map editor.
3 | -- File licensed under the GNU GPL version 2.
4 |
5 | DefinePlayerTypes("computer", "computer", "person", "person")
6 | PresentMap("Mushroom Panic", 2, 64, 256, 1)
--------------------------------------------------------------------------------
/maps/ftm/(2)nicks-duel.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/ftm/(2)nicks-duel.png
--------------------------------------------------------------------------------
/maps/ftm/(2)one-way-through.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/ftm/(2)one-way-through.png
--------------------------------------------------------------------------------
/maps/ftm/(4)beethoven-day.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/ftm/(4)beethoven-day.png
--------------------------------------------------------------------------------
/maps/ftm/(4)river-crossing.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/ftm/(4)river-crossing.png
--------------------------------------------------------------------------------
/maps/ftm/(4)river-crossing.smp:
--------------------------------------------------------------------------------
1 | -- Stratagus Map Presentation
2 | -- File generated by the Stratagus V2.2.5.5 builtin map editor.
3 | -- File licensed under the GNU GPL version 2.
4 |
5 | DefinePlayerTypes("computer", "computer", "person", "person", "person", "person")
6 | PresentMap("", 4, 96, 256, 12)
--------------------------------------------------------------------------------
/maps/ftm/(4)rockfort-arena.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/ftm/(4)rockfort-arena.png
--------------------------------------------------------------------------------
/maps/ftm/(4)winter-bloodbath.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/ftm/(4)winter-bloodbath.png
--------------------------------------------------------------------------------
/maps/ftm/(4)winter-bloodbath.smp:
--------------------------------------------------------------------------------
1 | -- Stratagus Map Presentation
2 | -- File generated by the Stratagus V2.2.7 builtin map editor.
3 | -- File licensed under the GNU GPL version 2.
4 |
5 | DefinePlayerTypes("computer", "computer", "computer", "person", "person", "person")
6 | PresentMap("", 4, 96, 256, 14)
7 |
--------------------------------------------------------------------------------
/maps/ftm/(5)black-flood.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/ftm/(5)black-flood.png
--------------------------------------------------------------------------------
/maps/ftm/(8)darius.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/ftm/(8)darius.png
--------------------------------------------------------------------------------
/maps/king/(4)reticle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/king/(4)reticle.png
--------------------------------------------------------------------------------
/maps/king/(4)reticle.smp:
--------------------------------------------------------------------------------
1 | -- Stratagus Map Presentation
2 | -- File generated by the Stratagus V2.3.0-bzr9007 builtin map editor.
3 | -- File licensed under the GNU GPL version 2.
4 |
5 | DefinePlayerTypes("nobody", "nobody", "computer", "computer", "nobody", "computer", "person")
6 | PresentMap("(2)Reticle", 1, 64, 64, 3)
7 |
--------------------------------------------------------------------------------
/maps/king/(4)tournament-forest.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/king/(4)tournament-forest.png
--------------------------------------------------------------------------------
/maps/king/(4)tournament-forest.smp:
--------------------------------------------------------------------------------
1 | -- Stratagus Map Presentation
2 | -- File generated by the Stratagus V2.3.0-bzr9007 builtin map editor.
3 | -- File licensed under the GNU GPL version 2.
4 |
5 | DefinePlayerTypes("person", "computer", "computer", "computer", "nobody", "rescue-active", "nobody", "rescue-active")
6 | PresentMap("(unnamed)", 1, 128, 128, 2)
7 |
--------------------------------------------------------------------------------
/maps/skirmish/multiplayer/(2)timeless-isle.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/multiplayer/(2)timeless-isle.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/multiplayer/(2)timeless-isle.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/multiplayer/(2)timeless-isle.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/multiplayer/(4)central-park.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/multiplayer/(4)central-park.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/multiplayer/(4)central-park.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/multiplayer/(4)central-park.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/multiplayer/(4)central-park.txt:
--------------------------------------------------------------------------------
1 | File Name: (4)central-park.pud
2 | Description:
3 | Dimensions: 128 x 128
4 | Terrain: Wasteland
5 | No Players: 4
6 |
7 | % Open Land: 40
8 | % Forest: 21
9 | % Water: 32
10 | % Mountains: 7
11 |
12 | Total Gold: 1,050,000 (12 mines)
13 | Total Oil: 60,000 (4 patches)
14 | Total Lumber: 263,700
15 | Start Mines: None
16 | Other Mines: 87,500
17 |
18 | Player 1 (Red) Person - Human
19 | (G=10000 L=3000 O=1000)
20 | 1 Peasant
21 |
22 | Player 2 (Blue) Person - Orc
23 | (G=10000 L=3000 O=1000)
24 | 1 Peasant
25 |
26 | Player 3 (Green) Person - Human
27 | (G=10000 L=3000 O=1000)
28 | 1 Peasant
29 |
30 | Player 4 (Purple) Person - Orc
31 | (G=10000 L=3000 O=1000)
32 | 1 Peasant
33 |
34 | This file is part of Stratagus Media Project
35 |
36 | Stratagus Media Project is free media (incl. sounds, voices, music,
37 | fonts, graphics, animations, videos or 3d models;
38 | you can redistribute it and/or modify it under the terms
39 | of the GNU General Public License as published by the Free Software
40 | Foundation; only version 2 of the License.
41 |
42 | Stratagus Media Project is distributed in the hope that it will be
43 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty
44 | of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
45 | GNU General Public License for more details.
46 |
--------------------------------------------------------------------------------
/maps/skirmish/multiplayer/(4)just-land.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/multiplayer/(4)just-land.png
--------------------------------------------------------------------------------
/maps/skirmish/multiplayer/(4)just-land.smp:
--------------------------------------------------------------------------------
1 | -- Stratagus Map Presentation
2 | -- File generated by the Stratagus V3.0.1-gitc8e9433b54ffa1bdd02604b885bb7ef6578976f9 builtin map editor.
3 | -- File licensed under the GNU GPL version 2.
4 |
5 | DefinePlayerTypes("person", "person", "person", "person")
6 | PresentMap("Mirrors", 4, 128, 128, 1)
7 |
--------------------------------------------------------------------------------
/maps/skirmish/multiplayer/(4)lake-in-the-middle.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/multiplayer/(4)lake-in-the-middle.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/multiplayer/(4)lake-in-the-middle.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/multiplayer/(4)lake-in-the-middle.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/multiplayer/(4)lake-in-the-middle.txt:
--------------------------------------------------------------------------------
1 | File Name: (4)lake-in-the-middle.pud
2 | Description:
3 | Dimensions: 128 x 128
4 | Terrain: Forest
5 | No Players: 4
6 |
7 | % Open Land: 41
8 | % Forest: 24
9 | % Water: 33
10 | % Mountains: 2
11 |
12 | Total Gold: 1,050,000 (12 mines)
13 | Total Oil: 120,000 (8 patches)
14 | Total Lumber: 318,300
15 | Start Mines: None
16 | Other Mines: 87,500
17 |
18 | Player 1 (Red) Person - Human
19 | (G=10000 L=3000 O=1000)
20 | 1 Peasant
21 |
22 | Player 2 (Blue) Person - Orc
23 | (G=10000 L=3000 O=1000)
24 | 1 Peasant
25 |
26 | Player 3 (Green) Person - Human
27 | (G=10000 L=3000 O=1000)
28 | 1 Peasant
29 |
30 | Player 4 (Purple) Person - Orc
31 | (G=10000 L=3000 O=1000)
32 | 1 Peasant
33 |
34 | This file is part of Stratagus Media Project
35 |
36 | Stratagus Media Project is free media (incl. sounds, voices, music,
37 | fonts, graphics, animations, videos or 3d models;
38 | you can redistribute it and/or modify it under the terms
39 | of the GNU General Public License as published by the Free Software
40 | Foundation; only version 2 of the License.
41 |
42 | Stratagus Media Project is distributed in the hope that it will be
43 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty
44 | of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
45 | GNU General Public License for more details.
46 |
--------------------------------------------------------------------------------
/maps/skirmish/multiplayer/(6)many-ways-to-rome.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/multiplayer/(6)many-ways-to-rome.bmp
--------------------------------------------------------------------------------
/maps/skirmish/multiplayer/(6)many-ways-to-rome.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/multiplayer/(6)many-ways-to-rome.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/multiplayer/(6)many-ways-to-rome.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/multiplayer/(6)many-ways-to-rome.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/multiplayer/(7)socotra.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/multiplayer/(7)socotra.png
--------------------------------------------------------------------------------
/maps/skirmish/multiplayer/(7)socotra.smp:
--------------------------------------------------------------------------------
1 | -- Stratagus Map Presentation
2 | -- File generated by the Stratagus V2.3.0-bzr9007 builtin map editor.
3 | -- File licensed under the GNU GPL version 2.
4 |
5 | DefinePlayerTypes("person", "person", "person", "person", "person", "person", "person")
6 | PresentMap("", 7, 256, 256, 1)
7 |
--------------------------------------------------------------------------------
/maps/skirmish/multiplayer/(8)farscape2006.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/multiplayer/(8)farscape2006.png
--------------------------------------------------------------------------------
/maps/skirmish/multiplayer/(8)farscape2006.pud:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/multiplayer/(8)farscape2006.pud
--------------------------------------------------------------------------------
/maps/skirmish/multiplayer/(8)farscape2006.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/multiplayer/(8)farscape2006.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/multiplayer/(8)farscape2006.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/multiplayer/(8)farscape2006.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/multiplayer/(8)farscape2008.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/multiplayer/(8)farscape2008.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/multiplayer/(8)farscape2008.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/multiplayer/(8)farscape2008.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/multiplayer/(8)farscape2008.txt:
--------------------------------------------------------------------------------
1 |
2 | (8)farscape2008.pud
3 |
4 | A 128x128 8 player map, named after the tv show.
5 |
6 | My 2006 pud of a similar name had a number of errors which I hope this one elimiates.
7 |
8 | I've also balanced the map some more.
9 |
10 | Hopefully this should provide a fresh experiance for fans of (8)farscape.pud
11 |
12 | I recommend playing (8)farscape.pud with a few friends and then going to (8)farscape2008.pud, just to confuse them. :)
13 |
14 | Copyright (c) 2008 by Kyran
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(2)blick-nach-oben.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(2)blick-nach-oben.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(2)blick-nach-oben.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(2)blick-nach-oben.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(2)blick-nach-oben.txt:
--------------------------------------------------------------------------------
1 | File Name: (2)blick-nach-oben.pud
2 | Description:
3 | Dimensions: 128 x 128
4 | Terrain: Forest
5 | No Players: 1
6 |
7 | % Open Land: 45
8 | % Forest: 24
9 | % Water: 24
10 | % Mountains: 7
11 |
12 | Total Gold: 900,000 (6 mines)
13 | Total Oil: 60,000 (2 patches)
14 | Total Lumber: 316,800
15 | Start Mines: None
16 | Other Mines: 150,000
17 |
18 | Player 1 (Red) Person - Human
19 | (G=10000 L=3000 O=1000)
20 | 1 Peasant
21 |
22 | Player 2 (Blue) Computer - Orc
23 | (G=10000 L=3000 O=1000)
24 | 1 Peon
25 |
26 | This file is part of Stratagus Media Project
27 |
28 | Stratagus Media Project is free media (incl. sounds, voices, music,
29 | fonts, graphics, animations, videos or 3d models;
30 | you can redistribute it and/or modify it under the terms
31 | of the GNU General Public License as published by the Free Software
32 | Foundation; only version 2 of the License.
33 |
34 | Stratagus Media Project is distributed in the hope that it will be
35 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty
36 | of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
37 | GNU General Public License for more details.
38 |
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(2)east-west-conflict.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(2)east-west-conflict.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(2)east-west-conflict.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(2)east-west-conflict.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(2)east-west-conflict.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(2)east-west-conflict.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(2)east-west-conflict.txt:
--------------------------------------------------------------------------------
1 | File Name: (2)east-west-conflict.pud
2 | Description:
3 | Dimensions: 128 x 128
4 | Terrain: Winter
5 | No Players: 1
6 |
7 | % Open Land: 18
8 | % Forest: 52
9 | % Water: 18
10 | % Mountains: 12
11 |
12 | Total Gold: 790,000 (6 mines)
13 | Total Oil: 150,000 (6 patches)
14 | Total Lumber: 748,600
15 | Start Mines: None
16 | Other Mines: 65,000 - 190,000
17 |
18 | Player 1 (Red) Computer - Orc
19 | (G=2500 L=1500 O=1000)
20 | 2 Peon
21 | 1 Orc Tanker
22 | 1 Orc Transport
23 | 2 Troll Destroyer
24 | 1 Goblin Zepplin
25 | 2 Dragon
26 | 2 Pig Farm
27 | 1 Orc Shipyard
28 | 1 Great Hall
29 |
30 | Player 6 (Black) Person - Human
31 | (G=2500 L=1500 O=1000)
32 | 2 Peasant
33 | 1 Human Tanker
34 | 1 Human Transport
35 | 2 Elven Destroyer
36 | 1 Gnomish Flying Machine
37 | 2 Gryphon Rider
38 | 2 Farm
39 | 1 Human Shipyard
40 | 1 Town Hall
41 |
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(2)king-in-stone.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(2)king-in-stone.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(2)king-in-stone.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(2)king-in-stone.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(2)king-in-stone.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(2)king-in-stone.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(2)no-mans-land.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(2)no-mans-land.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(2)no-mans-land.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(2)no-mans-land.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(2)no-mans-land.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(2)no-mans-land.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(2)nord-sued-konflikt.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(2)nord-sued-konflikt.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(2)nord-sued-konflikt.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(2)nord-sued-konflikt.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(2)nord-sued-konflikt.txt:
--------------------------------------------------------------------------------
1 | File Name: (2)nord-sued-konflikt.pud
2 | Description:
3 | Dimensions: 128 x 128
4 | Terrain: Forest
5 | No Players: 1
6 |
7 | % Open Land: 36
8 | % Forest: 33
9 | % Water: 29
10 | % Mountains: 2
11 |
12 | Total Gold: 600,000 (4 mines)
13 | Total Oil: 60,000 (2 patches)
14 | Total Lumber: 440,700
15 | Start Mines: None
16 | Other Mines: 150,000
17 |
18 | Player 1 (Red) Person - Human
19 | (G=10000 L=3000 O=1000)
20 | 1 Peasant
21 |
22 | Player 2 (Blue) Computer - Orc
23 | (G=10000 L=3000 O=1000)
24 | 1 Peon
25 |
26 | This file is part of Stratagus Media Project
27 |
28 | Stratagus Media Project is free media (incl. sounds, voices, music,
29 | fonts, graphics, animations, videos or 3d models;
30 | you can redistribute it and/or modify it under the terms
31 | of the GNU General Public License as published by the Free Software
32 | Foundation; only version 2 of the License.
33 |
34 | Stratagus Media Project is distributed in the hope that it will be
35 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty
36 | of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
37 | GNU General Public License for more details.
38 |
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(2)nordische-seenplatte.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(2)nordische-seenplatte.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(2)nordische-seenplatte.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(2)nordische-seenplatte.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(2)nordische-seenplatte.txt:
--------------------------------------------------------------------------------
1 | File Name: (2)nordische-seenplatte.pud
2 | Description:
3 | Dimensions: 128 x 128
4 | Terrain: Forest
5 | No Players: 1
6 |
7 | % Open Land: 46
8 | % Forest: 30
9 | % Water: 20
10 | % Mountains: 4
11 |
12 | Total Gold: 900,000 (6 mines)
13 | Total Oil: 60,000 (2 patches)
14 | Total Lumber: 410,300
15 | Start Mines: None
16 | Other Mines: 150,000
17 |
18 | Player 1 (Red) Person - Human
19 | (G=10000 L=3000 O=1000)
20 | 1 Peasant
21 |
22 | Player 2 (Blue) Computer - Orc
23 | (G=10000 L=3000 O=1000)
24 | 1 Peon
25 |
26 | This file is part of Stratagus Media Project
27 |
28 | Stratagus Media Project is free media (incl. sounds, voices, music,
29 | fonts, graphics, animations, videos or 3d models;
30 | you can redistribute it and/or modify it under the terms
31 | of the GNU General Public License as published by the Free Software
32 | Foundation; only version 2 of the License.
33 |
34 | Stratagus Media Project is distributed in the hope that it will be
35 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty
36 | of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
37 | GNU General Public License for more details.
38 |
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(2)oily-wars.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(2)oily-wars.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(2)oily-wars.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(2)oily-wars.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(2)the-right-strategy.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(2)the-right-strategy.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(2)the-right-strategy.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(2)the-right-strategy.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(2)the-right-strategy.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(2)the-right-strategy.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(2)zeit-fuer-entscheidungen.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(2)zeit-fuer-entscheidungen.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(2)zeit-fuer-entscheidungen.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(2)zeit-fuer-entscheidungen.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(2)zeit-fuer-entscheidungen.txt:
--------------------------------------------------------------------------------
1 | File Name: (2)zeit-fuer-entscheidungen.pud
2 | Description:
3 | Dimensions: 128 x 128
4 | Terrain: Winter
5 | No Players: 1
6 |
7 | % Open Land: 33
8 | % Forest: 42
9 | % Water: 21
10 | % Mountains: 4
11 |
12 | Total Gold: 630,000 (6 mines)
13 | Total Oil: 60,000 (2 patches)
14 | Total Lumber: 576,000
15 | Start Mines: None
16 | Other Mines: 15,000 - 150,000
17 |
18 | Player 1 (Red) Person - Human
19 | (G=10000 L=3000 O=1000)
20 | 1 Peasant
21 |
22 | Player 2 (Blue) Computer - Orc
23 | (G=10000 L=3000 O=1000)
24 | 1 Peon
25 |
26 | This file is part of Stratagus Media Project
27 |
28 | Stratagus Media Project is free media (incl. sounds, voices, music,
29 | fonts, graphics, animations, videos or 3d models;
30 | you can redistribute it and/or modify it under the terms
31 | of the GNU General Public License as published by the Free Software
32 | Foundation; only version 2 of the License.
33 |
34 | Stratagus Media Project is distributed in the hope that it will be
35 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty
36 | of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
37 | GNU General Public License for more details.
38 |
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(3)around-the-sea.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(3)around-the-sea.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(3)calculate.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(3)calculate.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(3)calculate.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(3)calculate.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(3)calculate.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(3)calculate.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(3)calculate.txt:
--------------------------------------------------------------------------------
1 | File Name: (3)calculate.pud
2 | Description:
3 | Dimensions: 128 x 128
4 | Terrain: Forest
5 | No Players: 1
6 |
7 | % Open Land: 14
8 | % Forest: 73
9 | % Water: 13
10 | % Mountains: 0
11 |
12 | Total Gold: 1,535,000 (14 mines)
13 | Total Oil: 180,000 (6 patches)
14 | Total Lumber: 1,041,300
15 | Start Mines: 15,000
16 | Other Mines: 15,000 - 170,000
17 |
18 | Player 1 (Red) Person - Human
19 | (G=3000 L=1000 O=750)
20 | 1 Peasant
21 | 2 Farm
22 | 1 Town Hall
23 |
24 | Player 4 (Purple) Computer - Orc
25 | (G=3000 L=1000 O=750)
26 | 1 Peon
27 | 2 Pig Farm
28 | 1 Great Hall
29 |
30 | Player 5 (Orange) Computer - Orc
31 | (G=3000 L=1000 O=750)
32 | 14 Dragon
33 |
34 | Player 6 (Black) Computer - Human
35 | (G=3000 L=1000 O=750)
36 | 1 Peasant
37 | 2 Farm
38 | 1 Town Hall
39 |
40 | Player 8 (Yellow) Computer - Orc
41 | (G=3000 L=1000 O=750)
42 | 6 Troll Destroyer
43 | 12 Giant Turtle
44 |
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(3)frosty-rescue.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(3)frosty-rescue.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(3)frosty-rescue.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(3)frosty-rescue.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(3)little-ambush.pud.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(3)little-ambush.pud.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(3)little-ambush.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(3)little-ambush.txt
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(3)man-on-the-moon.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(3)man-on-the-moon.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(3)man-on-the-moon.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(3)man-on-the-moon.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(3)man-on-the-moon.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(3)man-on-the-moon.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(3)no-mans-land.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(3)no-mans-land.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(3)no-mans-land.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(3)no-mans-land.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(3)one-two-three.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(3)one-two-three.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(3)one-two-three.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(3)one-two-three.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(3)one-two-three.txt:
--------------------------------------------------------------------------------
1 | File Name: (3)one-two-three.pud
2 | Description:
3 | Dimensions: 128 x 128
4 | Terrain: Forest
5 | No Players: 1
6 |
7 | % Open Land: 34
8 | % Forest: 33
9 | % Water: 19
10 | % Mountains: 14
11 |
12 | Total Gold: 1,575,000 (9 mines)
13 | Total Oil: 345,000 (9 patches)
14 | Total Lumber: 462,900
15 | Start Mines: None
16 | Other Mines: 30,000 - 400,000
17 |
18 | Player 1 (Red) Person - Human
19 | (G=5000 L=2000 O=1000)
20 | 1 Peasant
21 | 1 Human Tanker
22 | 1 Farm
23 |
24 | Player 2 (Blue) Computer - Orc
25 | (G=5000 L=2000 O=1000)
26 | 1 Peon
27 | 1 Orc Tanker
28 | 1 Pig Farm
29 |
30 | Player 3 (Green) Computer - Orc
31 | (G=5000 L=2000 O=1000)
32 | 1 Peon
33 | 1 Orc Tanker
34 | 1 Pig Farm
35 |
36 | This file is part of Stratagus Media Project
37 |
38 | Stratagus Media Project is free media (incl. sounds, voices, music,
39 | fonts, graphics, animations, videos or 3d models;
40 | you can redistribute it and/or modify it under the terms
41 | of the GNU General Public License as published by the Free Software
42 | Foundation; only version 2 of the License.
43 |
44 | Stratagus Media Project is distributed in the hope that it will be
45 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty
46 | of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
47 | GNU General Public License for more details.
48 |
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(3)sea-wars.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(3)sea-wars.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(3)sea-wars.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(3)sea-wars.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(3)three-frontiers.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(3)three-frontiers.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(3)three-frontiers.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(3)three-frontiers.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)4-corners.pud.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)4-corners.pud.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)4-corners.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)4-corners.txt
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)4-isl.pud.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)4-isl.pud.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)4-isl.txt:
--------------------------------------------------------------------------------
1 |
2 | (4)4-isl.pud
3 |
4 | Multiplayer map made for 4 players containing a number of tacticly
5 | placed ilands.
6 |
7 | (c) Copyright 2002 by John Ericson
8 |
9 | This file is part of Stratagus Media Project
10 |
11 | Stratagus Media Project is free media (incl. sounds, voices, music,
12 | fonts, graphics, animations, videos or 3d models;
13 | you can redistribute it and/or modify it under the terms
14 | of the GNU General Public License as published by the Free Software
15 | Foundation; only version 2 of the License.
16 |
17 | Stratagus Media Project is distributed in the hope that it will be
18 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty
19 | of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 | GNU General Public License for more details.
21 |
22 | $ID: $
23 |
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)arctic-goldrush.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)arctic-goldrush.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)arctic-goldrush.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)arctic-goldrush.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)arctic-goldrush.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)arctic-goldrush.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)chop-the-trees.pud.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)chop-the-trees.pud.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)chop-the-trees.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)chop-the-trees.txt
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)circle-hill.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)circle-hill.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)circle-hill.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)circle-hill.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)circle-hill.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)circle-hill.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)criss_cross.pud.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)criss_cross.pud.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)criss_cross2.pud.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)criss_cross2.pud.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)criss_cross2.txt:
--------------------------------------------------------------------------------
1 |
2 | (4)criss_cross2.pud
3 |
4 | This is a 2 player map, good on 2 on 2 and free for all. the primary
5 | mines ( the ones you start with ...) contain 140k and the expansion
6 | mines contain 60k. There's one in the middle which has the most in
7 | quantity. it has 500k + inside it. I hope you have fun with it. =)
8 |
9 | (c) Copyright 2002 by Carlo Almario
10 |
11 | This file is part of Stratagus Media Project
12 |
13 | Stratagus Media Project is free media (incl. sounds, voices, music,
14 | fonts, graphics, animations, videos or 3d models;
15 | you can redistribute it and/or modify it under the terms
16 | of the GNU General Public License as published by the Free Software
17 | Foundation; only version 2 of the License.
18 |
19 | Stratagus Media Project is distributed in the hope that it will be
20 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty
21 | of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 | GNU General Public License for more details.
23 |
24 | $ID: $
25 |
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)east-lakes.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)east-lakes.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)east-lakes.txt:
--------------------------------------------------------------------------------
1 | File Name: (4)east-lakes.pud
2 | Description:
3 | Dimensions: 128 x 128
4 | Terrain: Wasteland
5 | No Players: 2
6 |
7 | % Open Land: 33
8 | % Forest: 42
9 | % Water: 24
10 | % Mountains: 1
11 |
12 | Total Gold: 800,000 (8 mines)
13 | Total Oil: 200,000 (4 patches)
14 | Total Lumber: 566,600
15 | Start Mines: None
16 | Other Mines: 100,000
17 |
18 | Player 1 (Red) Person - Human
19 | (G=10000 L=5000 O=1500)
20 | 1 Peasant
21 |
22 | Player 2 (Blue) Person - Human
23 | (G=10000 L=3000 O=1000)
24 | 1 Peasant
25 |
26 | Player 3 (Green) Computer - Orc
27 | (G=10000 L=3000 O=1000)
28 | 1 Peon
29 |
30 | Player 4 (Purple) Computer - Orc
31 | (G=10000 L=3000 O=1000)
32 | 1 Peon
33 |
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)green-hell.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)green-hell.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)green-hell.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)green-hell.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)holy-forest.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)holy-forest.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)holy-forest.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)holy-forest.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)holy-forest.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)holy-forest.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)little-island.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)little-island.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)little-island.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)little-island.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)little-island.txt:
--------------------------------------------------------------------------------
1 | File Name: (4)little-island.pud
2 | Description:
3 | Dimensions: 128 x 128
4 | Terrain: Forest
5 | No Players: 1
6 |
7 | % Open Land: 34
8 | % Forest: 24
9 | % Water: 41
10 | % Mountains: 1
11 |
12 | Total Gold: 1,200,000 (8 mines)
13 | Total Oil: 400,000 (8 patches)
14 | Total Lumber: 302,500
15 | Start Mines: 150,000
16 | Other Mines: 150,000
17 |
18 | Player 1 (Red) Person - Human
19 | (G=10000 L=3000 O=1000)
20 | 1 Peasant
21 |
22 | Player 2 (Blue) Computer - Orc
23 | (G=10000 L=3000 O=1000)
24 | 1 Peon
25 |
26 | Player 3 (Green) Computer - Human
27 | (G=10000 L=3000 O=1000)
28 | 1 Peasant
29 |
30 | Player 4 (Purple) Computer - Orc
31 | (G=10000 L=3000 O=1000)
32 | 1 Peon
33 |
34 | This file is part of Stratagus Media Project
35 |
36 | Stratagus Media Project is free media (incl. sounds, voices, music,
37 | fonts, graphics, animations, videos or 3d models;
38 | you can redistribute it and/or modify it under the terms
39 | of the GNU General Public License as published by the Free Software
40 | Foundation; only version 2 of the License.
41 |
42 | Stratagus Media Project is distributed in the hope that it will be
43 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty
44 | of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
45 | GNU General Public License for more details.
46 |
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)look-around.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)look-around.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)look-around.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)look-around.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)pathfinders.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)pathfinders.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)pathfinders.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)pathfinders.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)pathfinders.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)pathfinders.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)scandinavia.pud.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)scandinavia.pud.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)scandinavia.txt:
--------------------------------------------------------------------------------
1 |
2 | (4)scandinavia.pud
3 |
4 | I saw a map of USA and got the idea to make a map of scandinavia in
5 | europe. The map might not be the most fair because I wanted to place
6 | the resources as lifelike as possible. It's good for multiplayer with
7 | 4-5 players.
8 |
9 | (c) Copyright 2002 by John Ericson
10 |
11 | This file is part of Stratagus Media Project
12 |
13 | Stratagus Media Project is free media (incl. sounds, voices, music,
14 | fonts, graphics, animations, videos or 3d models;
15 | you can redistribute it and/or modify it under the terms
16 | of the GNU General Public License as published by the Free Software
17 | Foundation; only version 2 of the License.
18 |
19 | Stratagus Media Project is distributed in the hope that it will be
20 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty
21 | of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 | GNU General Public License for more details.
23 |
24 | $ID: $
25 |
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)smile.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)smile.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)smile.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)smile.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)smile.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)smile.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)smile.txt:
--------------------------------------------------------------------------------
1 | File Name: (4)smile.pud
2 | Description:
3 | Dimensions: 128 x 128
4 | Terrain: Forest
5 | No Players: 1
6 |
7 | % Open Land: 20
8 | % Forest: 58
9 | % Water: 14
10 | % Mountains: 8
11 |
12 | Total Gold: 1,960,000 (10 mines)
13 | Total Oil: 200,000 (6 patches)
14 | Total Lumber: 830,600
15 | Start Mines: None
16 | Other Mines: 90,000 - 500,000
17 |
18 | Player 1 (Red) Computer - Orc
19 | (G=2500 L=1500 O=1000)
20 | 1 Peon
21 |
22 | Player 2 (Blue) Computer - Orc
23 | (G=2500 L=1500 O=1000)
24 | 1 Peon
25 |
26 | Player 3 (Green) Computer - Orc
27 | (G=2500 L=1500 O=1000)
28 | 1 Peon
29 |
30 | Player 6 (Black) Person - Human
31 | (G=2500 L=1500 O=1000)
32 | 1 Peasant
33 |
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)think-like-your-enemy.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)think-like-your-enemy.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)think-like-your-enemy.txt:
--------------------------------------------------------------------------------
1 | File Name: (4)think-like-your-enemy.pud
2 | Description:
3 | Dimensions: 128 x 128
4 | Terrain: Wasteland
5 | No Players: 1
6 |
7 | % Open Land: 45
8 | % Forest: 35
9 | % Water: 20
10 | % Mountains: 0
11 |
12 | Total Gold: 1,180,000 (12 mines)
13 | Total Oil: 200,000 (9 patches)
14 | Total Lumber: 490,900
15 | Start Mines: None
16 | Other Mines: 40,000 - 165,000
17 |
18 | Player 1 (Red) Computer - Orc
19 | (G=3000 L=1500 O=1000)
20 | 1 Peon
21 | 1 Cho'gall
22 | 1 Pig Farm
23 | 1 Orc Scout Tower
24 |
25 | Player 2 (Blue) Computer - Orc
26 | (G=1000 L=1000 O=1000)
27 | 1 Peon
28 | 1 Cho'gall
29 | 1 Pig Farm
30 | 1 Orc Scout Tower
31 |
32 | Player 3 (Green) Computer - Orc
33 | (G=1000 L=1000 O=1000)
34 | 1 Peon
35 | 1 Zuljin
36 | 1 Daemon
37 | 1 Pig Farm
38 | 1 Orc Scout Tower
39 |
40 | Player 5 (Orange) Person - Human
41 | (G=1000 L=1000 O=1000)
42 | 1 Peasant
43 | 1 Lothar
44 | 1 Farm
45 | 1 Human Scout Tower
46 |
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)tournament-continent.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)tournament-continent.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)tournament-continent.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)tournament-continent.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)tournament-continent.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)tournament-continent.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)tournament-forest.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)tournament-forest.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)tournament-forest.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)tournament-forest.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)tournament-forest.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)tournament-forest.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)tournament-islands.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)tournament-islands.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)tournament-islands.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)tournament-islands.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)tournament-islands.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)tournament-islands.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)what-can-you-do.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)what-can-you-do.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)what-can-you-do.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)what-can-you-do.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)what-can-you-do.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)what-can-you-do.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)what-can-you-do.txt:
--------------------------------------------------------------------------------
1 | File Name: (4)what-can-you-do.pud
2 | Description:
3 | Dimensions: 128 x 128
4 | Terrain: Forest
5 | No Players: 1
6 |
7 | % Open Land: 36
8 | % Forest: 43
9 | % Water: 12
10 | % Mountains: 9
11 |
12 | Total Gold: 1,585,000 (15 mines)
13 | Total Oil: 130,000 (6 patches)
14 | Total Lumber: 599,100
15 | Start Mines: 90,000
16 | Other Mines: 70,000 - 140,000
17 |
18 | Player 1 (Red) Computer - Orc
19 | (G=1000 L=1000 O=1000)
20 | 1 Peon
21 | 2 Orc Tanker
22 | 1 Troll Destroyer
23 | 1 Pig Farm
24 |
25 | Player 5 (Orange) Computer - Orc
26 | (G=1000 L=1000 O=1000)
27 | 1 Grunt
28 | 1 Peon
29 | 1 Catapult
30 | 1 Axethrower
31 | 1 Pig Farm
32 |
33 | Player 6 (Black) Person - Human
34 | (G=1000 L=1000 O=1000)
35 | 1 Footman
36 | 1 Peasant
37 | 1 Archer
38 | 1 Human Tanker
39 | 1 Gnomish Flying Machine
40 | 1 Farm
41 |
42 | Player 7 (White) Rescue - Orc
43 | (G=1000 L=1000 O=1000)
44 | 2 Peon
45 | 1 Catapult
46 | 1 Ogre
47 | 1 Axethrower
48 | 2 Pig Farm
49 | 1 Great Hall
50 |
51 | Player 8 (Yellow) Computer - Orc
52 | (G=1000 L=1000 O=1000)
53 | 1 Peon
54 | 1 Goblin Zepplin
55 | 2 Dragon
56 | 1 Pig Farm
57 |
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)woody-islands.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)woody-islands.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)woody-islands.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)woody-islands.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)woody-islands.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)woody-islands.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)you-have-to-look-around.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)you-have-to-look-around.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)you-have-to-look-around.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)you-have-to-look-around.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(4)you-have-to-look-around.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(4)you-have-to-look-around.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(5)diablospiral.pud.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(5)diablospiral.pud.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(5)diablospiral.txt:
--------------------------------------------------------------------------------
1 |
2 | (5)diablospiral.pud
3 |
4 | Just a simple 96x96 five player winter map, in the form of a spiral.
5 |
6 | Copyright (c) 2002 by Patrick McFarland
7 |
8 | This file is part of Stratagus Media Project
9 |
10 | Stratagus Media Project is free media (incl. sounds, voices, music,
11 | fonts, graphics, animations, videos or 3d models;
12 | you can redistribute it and/or modify it under the terms
13 | of the GNU General Public License as published by the Free Software
14 | Foundation; only version 2 of the License.
15 |
16 | Stratagus Media Project is distributed in the hope that it will be
17 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty
18 | of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 | GNU General Public License for more details.
20 |
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(5)many-ways-to-beat.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(5)many-ways-to-beat.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(5)many-ways-to-beat.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(5)many-ways-to-beat.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(5)many-ways-to-beat.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(5)many-ways-to-beat.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(5)many-ways-to-beat.txt:
--------------------------------------------------------------------------------
1 | File Name: (5)many-ways-to-beat.pud
2 | Description:
3 | Dimensions: 128 x 128
4 | Terrain: Forest
5 | No Players: 1
6 |
7 | % Open Land: 39
8 | % Forest: 41
9 | % Water: 20
10 | % Mountains: 0
11 |
12 | Total Gold: 2,280,000 (17 mines)
13 | Total Oil: 155,000 (8 patches)
14 | Total Lumber: 564,300
15 | Start Mines: 140,000
16 | Other Mines: 90,000 - 140,000
17 |
18 | Player 1 (Red) Person - Human
19 | (G=2500 L=1500 O=1000)
20 | 1 Peasant
21 | 1 Human Tanker
22 | 1 Farm
23 |
24 | Player 2 (Blue) Computer - Human
25 | (G=2500 L=1500 O=1000)
26 | 1 Peasant
27 | 1 Gnomish Flying Machine
28 | 1 Farm
29 |
30 | Player 6 (Black) Computer - Orc
31 | (G=2500 L=1500 O=1000)
32 | 1 Peon
33 | 1 Orc Tanker
34 | 1 Pig Farm
35 |
36 | Player 7 (White) Computer - Orc
37 | (G=2500 L=1500 O=1000)
38 | 1 Peon
39 | 1 Goblin Zepplin
40 | 1 Pig Farm
41 |
42 | Player 8 (Yellow) Computer - Orc
43 | (G=2500 L=1500 O=1000)
44 | 1 Pig Farm
45 | 1 Great Hall
46 |
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(5)speed-is-the-key.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(5)speed-is-the-key.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(5)speed-is-the-key.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(5)speed-is-the-key.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(5)speed-is-the-key.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(5)speed-is-the-key.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(5)the-pentagon.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(5)the-pentagon.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(5)the-pentagon.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(5)the-pentagon.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(5)the-pentagon.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(5)the-pentagon.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(5)the-pentagon.txt:
--------------------------------------------------------------------------------
1 | File Name: (5)the-pentagon.pud
2 | Description:
3 | Dimensions: 128 x 128
4 | Terrain: Wasteland
5 | No Players: 2
6 |
7 | % Open Land: 29
8 | % Forest: 57
9 | % Water: 14
10 | % Mountains: 0
11 |
12 | Total Gold: 1,150,000 (10 mines)
13 | Total Oil: 0
14 | Total Lumber: 820,700
15 | Start Mines: 115,000
16 | Other Mines: 115,000
17 |
18 | Player 1 (Red) Person - Human
19 | (G=1500 L=1000 O=1000)
20 | 1 Runestone
21 |
22 | Player 4 (Purple) Person - Human
23 | (G=1500 L=1000 O=1000)
24 | 1 Peasant
25 | 1 Lothar
26 | 1 Zuljin
27 |
28 | Player 5 (Orange) Computer - Orc
29 | (G=1500 L=1000 O=1000)
30 | 1 Peon
31 | 1 Gul'dan
32 |
33 | Player 6 (Black) Computer - Orc
34 | (G=1500 L=1000 O=1000)
35 | 1 Peon
36 | 1 Cho'gall
37 |
38 | Player 7 (White) Computer - Human
39 | (G=1500 L=1000 O=1000)
40 | 1 Peasant
41 | 1 Uther Lightbringer
42 |
43 | Player 8 (Yellow) Computer - Orc
44 | (G=1500 L=1000 O=1000)
45 | 1 Peon
46 |
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(5)venedig.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(5)venedig.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(5)venedig.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(5)venedig.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(5)venedig.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(5)venedig.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(6)all-against-the-floods.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(6)all-against-the-floods.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(6)all-against-the-floods.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(6)all-against-the-floods.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(6)all-against-the-floods.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(6)all-against-the-floods.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(6)all-against-the-floods.txt:
--------------------------------------------------------------------------------
1 | File Name: (6)all-against-the-floods.pud
2 | Description:
3 | Dimensions: 128 x 128
4 | Terrain: Wasteland
5 | No Players: 1
6 |
7 | % Open Land: 44
8 | % Forest: 30
9 | % Water: 26
10 | % Mountains: 0
11 |
12 | Total Gold: 2,160,000 (19 mines)
13 | Total Oil: 240,000 (9 patches)
14 | Total Lumber: 412,000
15 | Start Mines: None
16 | Other Mines: 90,000 - 290,000
17 |
18 | Player 1 (Red) Person - Human
19 | (G=2500 L=1500 O=1000)
20 | 1 Peasant
21 | 1 Human Tanker
22 |
23 | Player 2 (Blue) Computer - Human
24 | (G=2500 L=1500 O=1000)
25 | 1 Footman
26 | 1 Peasant
27 |
28 | Player 3 (Green) Computer - Human
29 | (G=2500 L=1500 O=1000)
30 | 1 Peasant
31 | 1 Gnomish Flying Machine
32 |
33 | Player 6 (Black) Computer - Orc
34 | (G=2500 L=1500 O=1000)
35 | 1 Peon
36 | 1 Orc Tanker
37 |
38 | Player 7 (White) Computer - Orc
39 | (G=2500 L=1500 O=1000)
40 | 1 Grunt
41 | 1 Peon
42 |
43 | Player 8 (Yellow) Computer - Orc
44 | (G=2500 L=1500 O=1000)
45 | 1 Peon
46 | 1 Goblin Zepplin
47 |
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(6)can-you-swim.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(6)can-you-swim.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(6)can-you-swim.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(6)can-you-swim.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(6)can-you-swim.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(6)can-you-swim.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(6)different-ways.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(6)different-ways.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(6)different-ways.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(6)different-ways.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(6)different-ways.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(6)different-ways.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(7)many-frontiers.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(7)many-frontiers.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(7)many-frontiers.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(7)many-frontiers.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(7)many-frontiers.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(7)many-frontiers.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)altar-in-the-middle.pud.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(8)altar-in-the-middle.pud.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)altar-in-the-middle.txt:
--------------------------------------------------------------------------------
1 |
2 | (8)Altar-in-the-middle.pud
3 |
4 | A common map with a GOWish theme.
5 |
6 | (c) Copyright 2002 by Carlo Almario
7 |
8 | This file is part of Stratagus Media Project
9 |
10 | Stratagus Media Project is free media (incl. sounds, voices, music,
11 | fonts, graphics, animations, videos or 3d models;
12 | you can redistribute it and/or modify it under the terms
13 | of the GNU General Public License as published by the Free Software
14 | Foundation; only version 2 of the License.
15 |
16 | Stratagus Media Project is distributed in the hope that it will be
17 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty
18 | of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 | GNU General Public License for more details.
20 |
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)are-you-lucky.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(8)are-you-lucky.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)are-you-lucky.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(8)are-you-lucky.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)are-you-lucky.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(8)are-you-lucky.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)death-in-the-rocks.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(8)death-in-the-rocks.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)death-in-the-rocks.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(8)death-in-the-rocks.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)death-in-the-rocks.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(8)death-in-the-rocks.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)diabloarena.pud.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(8)diabloarena.pud.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)diabloarena.txt:
--------------------------------------------------------------------------------
1 |
2 | (8)diabloarena.pud
3 |
4 | A 128x128 arena map with a cool symbol in the middle.
5 |
6 | Copyright (c) 2002 by Patrick McFarland
7 |
8 | This file is part of Stratagus Media Project
9 |
10 | Stratagus Media Project is free media (incl. sounds, voices, music,
11 | fonts, graphics, animations, videos or 3d models;
12 | you can redistribute it and/or modify it under the terms
13 | of the GNU General Public License as published by the Free Software
14 | Foundation; only version 2 of the License.
15 |
16 | Stratagus Media Project is distributed in the hope that it will be
17 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty
18 | of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 | GNU General Public License for more details.
20 |
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)diablodarkwood.pud.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(8)diablodarkwood.pud.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)diablodarkwood.txt:
--------------------------------------------------------------------------------
1 |
2 | (8)diablodarkwood.pud
3 |
4 | A 128x128 8 player map, in the style of Blizzard's Garden of War,
5 | set in the deep forest of Darkwood.
6 |
7 | Copyright (c) 2003 by Patrick McFarland
8 |
9 | This file is part of Stratagus Media Project
10 |
11 | Stratagus Media Project is free media (incl. sounds, voices, music,
12 | fonts, graphics, animations, videos or 3d models;
13 | you can redistribute it and/or modify it under the terms
14 | of the GNU General Public License as published by the Free Software
15 | Foundation; only version 2 of the License.
16 |
17 | Stratagus Media Project is distributed in the hope that it will be
18 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty
19 | of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 | GNU General Public License for more details.
21 |
22 |
23 |
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)diablomaze.pud.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(8)diablomaze.pud.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)diablomaze.txt:
--------------------------------------------------------------------------------
1 |
2 | (8)diablomaze.pud
3 |
4 | A large 256x256, confusing, maze of rocks and forest.
5 |
6 | Copyright (c) 2002 by Patrick McFarland
7 |
8 | This file is part of Stratagus Media Project
9 |
10 | Stratagus Media Project is free media (incl. sounds, voices, music,
11 | fonts, graphics, animations, videos or 3d models;
12 | you can redistribute it and/or modify it under the terms
13 | of the GNU General Public License as published by the Free Software
14 | Foundation; only version 2 of the License.
15 |
16 | Stratagus Media Project is distributed in the hope that it will be
17 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty
18 | of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 | GNU General Public License for more details.
20 |
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)everywhere.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(8)everywhere.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)everywhere.txt:
--------------------------------------------------------------------------------
1 | File Name: (8)everywhere.pud
2 | Description:
3 | Dimensions: 128 x 128
4 | Terrain: Forest
5 | No Players: 1
6 |
7 | % Open Land: 37
8 | % Forest: 55
9 | % Water: 6
10 | % Mountains: 2
11 |
12 | Total Gold: 1,620,000 (18 mines)
13 | Total Oil: 60,000 (4 patches)
14 | Total Lumber: 769,800
15 | Start Mines: None
16 | Other Mines: 90,000
17 |
18 | Player 1 (Red) Person - Human
19 | (G=1000 L=1000 O=1000)
20 | 2 Peasant
21 | 1 Archer
22 | 1 Farm
23 |
24 | Player 2 (Blue) Computer - Human
25 | (G=1000 L=1000 O=1000)
26 | 1 Footman
27 | 2 Peasant
28 | 1 Farm
29 |
30 | Player 3 (Green) Computer - Human
31 | (G=1000 L=1000 O=1000)
32 | 2 Peasant
33 | 1 Archer
34 | 1 Farm
35 | 1 Runestone
36 |
37 | Player 4 (Purple) Computer - Orc
38 | (G=1000 L=1000 O=1000)
39 | 2 Peon
40 | 1 Troll Destroyer
41 | 1 Pig Farm
42 |
43 | Player 5 (Orange) Computer - Orc
44 | (G=1000 L=1000 O=1000)
45 | 1 Grunt
46 | 2 Peon
47 | 1 Pig Farm
48 |
49 | Player 6 (Black) Computer - Human
50 | (G=1000 L=1000 O=1000)
51 | 2 Peasant
52 | 1 Gryphon Rider
53 | 1 Farm
54 |
55 | Player 7 (White) Computer - Orc
56 | (G=1000 L=1000 O=1000)
57 | 2 Peon
58 | 1 Death Knight
59 | 1 Pig Farm
60 |
61 | Player 8 (Yellow) Computer - Orc
62 | (G=1000 L=1000 O=1000)
63 | 2 Peon
64 | 1 Goblin Zepplin
65 | 1 Pig Farm
66 |
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)fc-deathmatch-plain.pud.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(8)fc-deathmatch-plain.pud.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)fc-deathmatch-x.pud.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(8)fc-deathmatch-x.pud.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)oil-is-the-key.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(8)oil-is-the-key.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)oil-is-the-key.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(8)oil-is-the-key.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)oil-is-the-key.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(8)oil-is-the-key.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)roads-to-the-coasts.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(8)roads-to-the-coasts.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)roads-to-the-coasts.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(8)roads-to-the-coasts.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)roads-to-the-coasts.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(8)roads-to-the-coasts.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)tournament-continent.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(8)tournament-continent.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)tournament-continent.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(8)tournament-continent.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)tournament-continent.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(8)tournament-continent.sms.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)tournament-islands.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(8)tournament-islands.bmp
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)tournament-islands.smp.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(8)tournament-islands.smp.gz
--------------------------------------------------------------------------------
/maps/skirmish/singleplayer/(8)tournament-islands.sms.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/maps/skirmish/singleplayer/(8)tournament-islands.sms.gz
--------------------------------------------------------------------------------
/scripts/lib/classes.lua:
--------------------------------------------------------------------------------
1 | function class(base, init)
2 | local c = {} -- a new class instance
3 | if not init and type(base) == 'function' then
4 | init = base
5 | base = nil
6 | elseif type(base) == 'table' then
7 | -- our new class is a shallow copy of the base class!
8 | for i,v in pairs(base) do
9 | c[i] = v
10 | end
11 | c._base = base
12 | end
13 | -- the class will be the metatable for all its objects,
14 | -- and they will look up their methods in it.
15 | c.__index = c
16 |
17 | -- expose a constructor which can be called by ()
18 | local mt = {}
19 | mt.__call = function(class_tbl, ...)
20 | local obj = {}
21 | setmetatable(obj,c)
22 | if init then
23 | init(obj,...)
24 | else
25 | -- make sure that any stuff from the base class is initialized!
26 | if base and base.init then
27 | base.init(obj, ...)
28 | end
29 | end
30 | return obj
31 | end
32 | c.init = init
33 | c.is_a = function(self, klass)
34 | local m = getmetatable(self)
35 | while m do
36 | if m == klass then return true end
37 | m = m._base
38 | end
39 | return false
40 | end
41 | setmetatable(c, mt)
42 | return c
43 | end
44 |
--------------------------------------------------------------------------------
/scripts/menus/objectives.lua:
--------------------------------------------------------------------------------
1 | function RunObjectivesMenu()
2 | local menu = WarGameMenu(panel(1))
3 |
4 | menu:addLabel(_("Objectives"), 128, 11, Fonts["large"], true)
5 |
6 | local objectives = ""
7 | table.foreachi(Objectives, function(k,v) objectives = objectives .. v .. "\n" end)
8 |
9 | local l = MultiLineLabel(objectives)
10 | l:setFont(Fonts["large"])
11 | l:setAlignment(MultiLineLabel.LEFT)
12 | l:setLineWidth(228)
13 | l:adjustSize()
14 | menu:add(l, 14, 38)
15 |
16 | local btn = menu:addFullButton("~!OK", "o", 16, 288 - 40, function() menu:stop() end)
17 | btn:requestFocus()
18 |
19 | menu:run()
20 | end
21 |
22 |
--------------------------------------------------------------------------------
/scripts/translate/translate.lua:
--------------------------------------------------------------------------------
1 | LanguageTable = {
2 | "English", "", "",
3 | "Italian", "scripts/translate/stratagus-it.po", "scripts/translate/it_IT.po",
4 | "Spanish", "scripts/translate/stratagus-es.po", "scripts/translate/es_ES.po",
5 | "Russian", "scripts/translate/stratagus-ru.po", "scripts/translate/ru_RU.po",
6 | "French", "scripts/translate/stratagus-fr.po", "scripts/translate/fr_FR.po",
7 | "German", "scripts/translate/stratagus-de.po", "scripts/translate/de_DE.po",
8 | "Czech", "scripts/translate/stratagus-cz.po", "scripts/translate/cz_CZ.po",
9 | }
10 |
--------------------------------------------------------------------------------
/wargus.desktop.in:
--------------------------------------------------------------------------------
1 | [Desktop Entry]
2 | Name=Wargus - Warcraft II
3 | Comment=Warcraft II data game set for the Stratagus engine
4 | Exec=@GAMEDIRABS@wargus
5 | Icon=wargus
6 | Terminal=false
7 | Type=Application
8 | Categories=Game;StrategyGame;
9 | StartupNotify=false
10 |
--------------------------------------------------------------------------------
/wargus.h:
--------------------------------------------------------------------------------
1 | /*
2 | _________ __ __
3 | / _____// |_____________ _/ |______ ____ __ __ ______
4 | \_____ \\ __\_ __ \__ \\ __\__ \ / ___\| | \/ ___/
5 | / \| | | | \// __ \| | / __ \_/ /_/ > | /\___ |
6 | /_______ /|__| |__| (____ /__| (____ /\___ /|____//____ >
7 | \/ \/ \//_____/ \/
8 | ______________________ ______________________
9 | T H E W A R B E G I N S
10 | Stratagus - A free fantasy real time strategy game engine
11 |
12 | Copyright (C) 2010-2020 The Stratagus Project
13 |
14 | This program is free software: you can redistribute it and/or modify
15 | it under the terms of the GNU General Public License as published by
16 | the Free Software Foundation, either version 2 of the License, or
17 | (at your option) any later version.
18 |
19 | This program is distributed in the hope that it will be useful,
20 | but WITHOUT ANY WARRANTY; without even the implied warranty of
21 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 | GNU General Public License for more details.
23 |
24 | You should have received a copy of the GNU General Public License
25 | along with this program. If not, see .
26 |
27 | */
28 |
29 | #define REEXTRACT_MARKER_FILE "data_copied.wargus"
30 |
--------------------------------------------------------------------------------
/wargus.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/wargus.ico
--------------------------------------------------------------------------------
/wargus.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Wargus/wargus/828feb5150d195a128ec47935ff05bb072ee75fd/wargus.png
--------------------------------------------------------------------------------
/wargus.rc:
--------------------------------------------------------------------------------
1 | #ifdef _WIN64
2 | #define NAME "Wargus (64 bit)"
3 | #else
4 | #define NAME "Wargus"
5 | #endif
6 |
7 | #define DESCRIPTION NAME
8 | #define VERSION "3.3.3"
9 | #define VIVERSION 3,3,3
10 | #define HOMEPAGE "https://wargus.github.io"
11 | #define LICENSE "GPL v2+"
12 | #define COPYRIGHT "(c) 1998-2022 by The Stratagus Project"
13 |
14 | 1 ICON "wargus.ico"
15 | 1 VERSIONINFO
16 | FILEVERSION VIVERSION
17 | PRODUCTVERSION VIVERSION
18 | FILEOS 4
19 | FILETYPE 1
20 |
21 | BEGIN
22 | BLOCK "StringFileInfo"
23 | BEGIN
24 | BLOCK "040904E4"
25 | BEGIN
26 | VALUE "FileDescription", DESCRIPTION
27 | VALUE "FileVersion", VERSION
28 | VALUE "InternalName", NAME
29 | VALUE "LegalCopyright", COPYRIGHT
30 | VALUE "License", LICENSE
31 | VALUE "Homepage", HOMEPAGE
32 | VALUE "OriginalFilename", "wargus.exe"
33 | VALUE "ProductName", NAME
34 | VALUE "ProductVersion", VERSION
35 | END
36 | END
37 |
38 | BLOCK "VarFileInfo"
39 | BEGIN
40 | VALUE "Translation", 0x409, 1252
41 | END
42 | END
43 |
--------------------------------------------------------------------------------