Compare commits

..

46 Commits

Author SHA1 Message Date
xawotihs a2f510bbd5 Still trying to repair cross compilation 2019-09-07 22:47:45 +02:00
xawotihs 4605d38982 Including cinttypes only when supported by compiler 2019-09-07 21:44:43 +02:00
xawotihs d9452b02d9 Adds <cinttypes> for definition of uint64_t 2019-09-07 21:32:22 +02:00
xawotihs 1cfee14caa Put back <stdint.h> to avoid having to change the android compilation options 2019-09-07 20:27:05 +02:00
xawotihs fd3777f08e Now compile with VS2019 2019-09-07 19:46:15 +02:00
Xawotihs a27216c317 Deactivating mac/ios build as currently broken 2019-09-05 22:24:33 +02:00
xawotihs 8315acbe86 Removed death_grasp.txt and ai/goblin_artillery.txt from the testsuite (see issue#1023) 2019-09-04 22:39:41 +02:00
Xawotihs 7a2f23db45 Using trusty dist as it seems the only one supported for Android. 2019-09-04 16:01:50 +02:00
Xawotihs 711f52e5ce Updating JDK to 7 2019-09-03 23:15:48 +02:00
Xawotihs 0cf8c1a970 Installing ant for android build 2019-09-03 22:40:11 +02:00
Xawotihs 2750b34b4f Trying to fix python dependencies 2019-09-03 22:24:39 +02:00
xawotihs b023dd89b6 - Should remove an error with the PSP compiler 2019-09-03 22:09:44 +02:00
Eduardo 3d9526a1dd Commander Anthology (CMA) Correction 2019-05-08 16:37:47 -05:00
Eduardo 1b8157ef0e Merge branch 'master' of https://github.com/WagicProject/wagic 2019-05-05 21:17:22 -05:00
Eduardo 8d20fd6483 Fixes to primitives 2019-05-05 21:17:15 -05:00
Eduardo 66741957c3 Revert "Fixes to primitives"
This reverts commit eb7d8850f4.
2019-05-05 21:14:27 -05:00
Eduardo eb7d8850f4 Fixes to primitives 2019-05-05 21:13:48 -05:00
Eduardo MG 934b9d2856 Delete CM1.zip 2019-05-04 15:57:56 -05:00
Eduardo MG 0af443b753 Commander's Arsenal (CM1)
Commander's Arsenal (CM1) had the wrong name, this is the correct name and set code.
2019-05-04 15:53:57 -05:00
Eduardo MG 41e160ae34 War of the Spark _cards.dat 2019-05-01 17:57:12 -05:00
Eduardo 8b620627d9 Major Corrections to WAR and removing crashing cards
Cards that check the colors of mana that lands on the opponent battlefield crashes the game, hard to reproduce but happens often enought that I decided to remove them.

Minor fixes in set and Major fixes in WAR primitives
2019-05-01 17:19:01 -05:00
Eduardo d943778309 Double face cards should be marked as tokens 2019-05-01 17:09:27 -05:00
Eduardo 06cb835a5b Teaching AI proliferate and shocklands
Some minor changes, corrections to XLN and C17, changing name of game mode from horde to tribal wars
2019-05-01 17:00:48 -05:00
Eduardo f1a529576e Preparing for a release, bug fixes and adjustments to game modes
Updating macros and new cards marked as borderline
2019-04-25 18:03:41 -05:00
Eduardo MG 1af3cff419 Uploading sets since Amonkhet until War of the spark
These are graded as borderline, each set has it's individual txt file, not integrated to the main mtg.txt to make them easier to manage, with the appropiate tools and more testing the files can be integrated. 

Includes standard sets(expansions) and supplemental products(masters sets, commander) since Amonkhet.
2019-04-25 17:53:49 -05:00
Eduardo 5db6b807ba Set limited game mode, AI changes, primitives and _cards.dat corrections
New set limited ,where you get a deck two random sets.

Still playing with the AI values and hueristics.

Cards fixes. Masters Edition should be named ME1 and the Mythic Edition is MED, the cards multiverse ids are still the same so the decks and references should not change.
2019-04-20 15:51:52 -05:00
Eduardo MG 1c6b0bdfd5 New game modes
Rules for several new game modes and rules

horde, get a random tribe and summon a creature from your deck each turn
paradise, lands tap for all mana
false god, exchange permanents at upkeep
morinfen, lose 1 life for every permanent you control at upkeep, starts at 50 life
2019-04-20 12:25:58 -05:00
Eduardo 3dfcc65fa6 Bug fix for the biggest crash and fixes to the primitives
I figured a while ago that the cause of the crash was a rendering issue, not an engine issue, since you could copy spells in the stack if you didn't targeted them. The crash was most likely in ActionStack, just had to follow the trace. It doesn't affect anithing else, that line was trying to render something in the stack that's a permanent but it always had bad ptrs.
2019-04-17 20:28:43 -05:00
Eduardo c3937ce517 Fixing primitives and mayor bugs report
Game crashes when AI plays a card with cost {X} and that targets a player, this cards can be coded around that restriction and still work as per the rules.

The BIGGEST BUG the game has now is that crashes occur when a PERMANENT TARGETS A SPELL IN THE STACK, sometimes the AI can make this cards work (WTH!?) but never the player.

Effects like mirari and similar could be coded so that you don't target the spell but trigger and copy the source of the trigger, look at the code of mirari for this to be more clear.

This effect used to work for many many years I remember  Glen Elendra Archmage being one of my favorite cards back in the day. This bug has been present since god knows when, as early as october 2016: https://wololo.net/forum/viewtopic.php?f=4&t=66296&start=150#p98160

Also freaking Lemures caused the AI to just keep repeating the effect so I put a limit on activations on them.
2019-04-14 21:56:20 -05:00
Eduardo ab1fbaa806 New game modes, bug fixes in primitives, improving AI, new planeswalkers type rule
New rules based on vanguard, 3 new random game modes, one is tribal and one uses any card in the game.

Several corrections and bugs fixes. Cards with x in their cost and that can target any player used to crash the game.

Teaching AI new things and changing values of efficiency.

You can have multiple "Jace" planeswalkers, you can't have two of the exact same name (no two Jace, the mind sculptor).
2019-04-14 19:57:01 -05:00
Eduardo 6eca5bea2f Last March Update
Some bug fixing to the primitives, the fetchlands are so buggy that I restored to a simple version

Some minor UI improvements
2019-03-31 20:53:13 -06:00
Rolzad73 e4d73d95ec - removing debug info after travis build fix 2019-03-27 22:50:10 -04:00
Rolzad73 363383df6d - try to fix travis build travis script debug pt 7 (groovy, Java 8 incompatibility) 2019-03-27 22:15:48 -04:00
Rolzad73 0d05804376 - try to fix travis build travis script debug pt 6 (ant error log too long) 2019-03-27 22:04:11 -04:00
Rolzad73 cdd36a404b - try to fix travis build travis script debug pt 5 2019-03-27 21:42:37 -04:00
Rolzad73 64c509980c - fix bad commit travis.yml 2019-03-27 21:39:38 -04:00
Rolzad73 46ba018201 - try to fix travis build travis script debug pt 4 2019-03-27 21:37:38 -04:00
Rolzad73 0cb931e6e2 - try to fix travis build travis script debug pt 3 2019-03-27 21:25:26 -04:00
Rolzad73 58af6f73d9 - try to fix travis build travis script debug pt 2 2019-03-27 21:12:46 -04:00
Rolzad73 e81f1299cb - try to fix travis build travis script debug 2019-03-27 21:03:40 -04:00
Rolzad73 9b5f9684b0 - try to fix travis build android dependancies pt 3 2019-03-27 20:48:21 -04:00
Rolzad73 d934c0948c - try to fix travis build android dependancies pt 2 2019-03-27 20:45:05 -04:00
Rolzad73 917a3a88df - try to fix travis build android dependancies 2019-03-27 20:38:51 -04:00
Rolzad73 dc5b8a8c52 - try to fix travis build 2019-03-27 15:50:08 -04:00
Eduardo MG d2b44e652b Uploading a couple of years of sets
RNA Guild Kit		Set Code: GK2
Ravnica Allegiance	Set Code: RNA
Ultimate Box Topper Set Code: PUMA
Ultimate Masters	Set Code: UMA
GRN Guild Kit		Set Code: GK1
Guilds of Ravnica	Set Code: GRN
Commander 2018	Set Code: C18
Core Set 2019		Set Code: M19
Signature 
Spellbook: Jace	Set Code: SS1
Battlebond 		Set Code: BBD
Commander Anthology 
Volume II			Set Code: CM2
Dominaria		Set Code: DOM
Duel Decks: Elves 	
vs. Inventors		Set Code: DDU
Masters 25 		Set Code: A25
Rivals of Ixalan	Set Code: RIX
Unstable			Set Code: UST
Explorers of Ixalan   Set Code: E02
From the Vault: 
Transform		Set Code: V17
Iconic Masters		Set Code: IMA
Duel Decks: Merfolk
vs. Goblins		Set Code: DDT
Ixalan			Set Code: XLN
Commander 2017	Set Code: C17
Hour of Devastation Set Code: HOU
Archenemy: Nicol 
Bolas			Set Code: E01
Commander Anthology	Set Code: CMA
Amonkhet			Set Code: AKH
Amonkhet 
Invocations			Set Code: MP2
Duel Decks: Mind 
vs. Might			        Set Code: DDS
Modern Masters 2017	Set Code: MM3
2019-03-26 20:35:45 -06:00
Eduardo 1ce3b469e7 Update primitives
Added the supertype Legendary to Planeswalkers.

When you pay life the code should be {L:1}  not just {L} or else the cards ave very buggy.

Several bug fixes, card corrections and typos.
2019-03-26 16:50:34 -06:00
3241 changed files with 52156 additions and 11062 deletions
-6
View File
@@ -1,6 +0,0 @@
[submodule "thirdparty/zlib"]
path = thirdparty/zlib
url = https://github.com/madler/zlib
[submodule "thirdparty/SDL2"]
path = thirdparty/SDL2
url = https://github.com/spurious/SDL-mirror.git
+44 -127
View File
@@ -1,130 +1,61 @@
language: cpp language: cpp
dist: trusty
branches: branches:
except: except:
- latest-master - latest-master
- latest-cmake
matrix:
include:
- os: linux
env: BUILD_TYPE=PSP
sudo: required
- os: linux
env: BUILD_TYPE=SDL
sudo: required
- os: linux
env: BUILD_TYPE=Qt
sudo: required
- os: osx
env: BUILD_TYPE=Qt
- os: osx
env: BUILD_TYPE=iOS
- os: linux
language: android
env: BUILD_TYPE=ANDROID
sudo: required
- os: osx
env: BUILD_TYPE=Emscripten
android:
components:
- platform-tools
- build-tools-23.0.1
- android-10
cache:
directories:
- opt/pspsdk
- android-ndk-r9
before_install: before_install:
- if [ "$TRAVIS_OS_NAME" == "linux" ]; then - export BUILD_PSP=YES
sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu trusty universe" && - export BUILD_ANDROID=YES
sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu trusty main" && - export BUILD_Qt=YES
sudo add-apt-repository --yes ppa:ubuntu-toolchain-r/test && - export BUILD_MAC=NO
sudo apt-get -qq update && # Only building on Mac when not handling pull request
sudo apt-get -qq install g++-4.8 && # - if [ "$TRAVIS_PULL_REQUEST" == "false" ]; then
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 90; # export BUILD_MAC=YES;
fi # fi
- if [ "$TRAVIS_OS_NAME" == "osx" ]; then - sudo apt-get update -qq
brew update &&
brew install dpkg &&
pwd &&
ls;
fi
- if [ "$BUILD_TYPE" == "iOS" ]; then
curl -s -f -L https://raw.github.com/r-plus/dotfiles/master/install_theos.sh | bash &&
pwd &&
ls;
fi
# Building for PSP here # Building for PSP here
- if [ "$BUILD_TYPE" == "PSP" ]; then - if [ "$BUILD_PSP" == "YES" ]; then
export PSPDEV="$TRAVIS_BUILD_DIR/opt/pspsdk" && export PSPDEV="$TRAVIS_BUILD_DIR/opt/pspsdk" &&
export PSPSDK="$PSPDEV/psp/sdk" && export PSPSDK="$PSPDEV/psp/sdk" &&
export PATH="$PATH:$PSPDEV/bin:$PSPSDK/bin" && export PATH="$PATH:$PSPDEV/bin:$PSPSDK/bin" &&
wget -O sdk.lzma https://sourceforge.net/projects/minpspw/files/SDK%20%2B%20devpak/pspsdk%200.11.2/minpspw_0.11.2-amd64.tar.lzma/download; wget -O sdk.lzma http://downloads.sourceforge.net/project/minpspw/SDK%20%2B%20devpak/pspsdk%200.11.2/minpspw_0.11.2-amd64.tar.lzma;
fi
# Building for Android here
- if [ "$BUILD_TYPE" == "ANDROID" ]; then
export ANDROID="/usr/local/android-sdk-linux/tools/android" &&
export PATH=$PATH:"/usr/local/android-sdk-linux/tools" &&
wget http://dl.google.com/android/ndk/android-ndk-r9-linux-x86_64.tar.bz2 -nv &&
wget https://bitbucket.org/ewing/sdl_androidcmake/get/4e9e88c03f04.zip -nv;
fi fi
# Building for Qt here # Building for Qt here
- if [ "$BUILD_TYPE" == "Qt" ] && [ "$TRAVIS_OS_NAME" == "osx" ]; then - if [ "$BUILD_Qt" == "YES" ]; then
brew install qt5 && sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu trusty universe" &&
sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu trusty main" &&
sudo apt-get -qq update &&
sudo apt-get -qq install qt5-qmake qtbase5-dev qtdeclarative5-dev qttools5-dev qtmultimedia5-dev pulseaudio libpulse-dev &&
export QMAKE="qmake -qt=qt5"; export QMAKE="qmake -qt=qt5";
fi fi
- if [ "$BUILD_TYPE" == "Qt" ] && [ "$TRAVIS_OS_NAME" == "linux" ]; then # Building for Android here
sudo apt-get install -qq qt5-qmake qtbase5-dev qtdeclarative5-dev qttools5-dev qtmultimedia5-dev pulseaudio libpulse-dev && - if [ "$BUILD_ANDROID" == "YES" ]; then
export QMAKE="qmake -qt=qt5"; export ANDROID="android-sdk-linux/tools/android" &&
if [ `uname -m` = x86_64 ]; then
sudo dpkg --add-architecture i386 && sudo apt-get update &&
sudo apt-get install -qq --force-yes libgd2-xpm-dev libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5 lib32z1 jq ant; fi &&
wget http://dl.google.com/android/ndk/android-ndk-r9-linux-x86_64.tar.bz2 -nv &&
wget http://dl.google.com/android/android-sdk_r24.3.4-linux.tgz -nv;
fi fi
# Building for SDL here
- if [ "$BUILD_TYPE" == "SDL" ]; then
export SDL2DIR="$TRAVIS_BUILD_DIR/thirdparty/SDL2";
fi
# Building for Emscripten here
- if [ "$BUILD_TYPE" == "Emscripten" ] && [ "$TRAVIS_OS_NAME" == "osx" ]; then
brew install emscripten && export LLVM=/usr/local/opt/emscripten/libexec/llvm/bin && emcc;
fi
install: install:
- | - if [ "$BUILD_PSP" == "YES" ]; then
if [[ "${TRAVIS_OS_NAME}" == "linux" ]]; then tar -x --xz -f sdk.lzma;
if [[ -z "$(ls -A ${DEPS_DIR}/cmake/bin)" ]]; then fi
CMAKE_URL="https://cmake.org/files/v3.7/cmake-3.7.2-Linux-x86_64.tar.gz" - if [ "$BUILD_ANDROID" == "YES" ]; then
mkdir -p cmake && travis_retry wget --no-check-certificate --quiet -O - "${CMAKE_URL}" | tar --strip-components=1 -xz -C cmake tar --absolute-names -jxf android-ndk-r9-linux-x86_64.tar.bz2 &&
fi tar -zxf android-sdk_r24.3.4-linux.tgz &&
export PATH="${DEPS_DIR}/cmake/bin:${PATH}" $ANDROID list sdk --extended -a &&
fi echo yes | $ANDROID update sdk -a -t tools,platform-tools,build-tools-23.0.1,android-10 --no-ui --force --no-https;
- if [ "$TRAVIS_OS_NAME" == "osx" ]; then fi
if ! brew ls --version cmake &>/dev/null; then brew install cmake; fi - sudo python -m easy_install --upgrade pyOpenSSL
fi - sudo pip install pyjavaproperties
- if [ "$BUILD_TYPE" == "PSP" ]; then - sudo pip install github3.py
tar -x --xz -f sdk.lzma; - sudo pip install cpp-coveralls
fi
- if [ "$TRAVIS_OS_NAME" == "linux" ] && [ "$BUILD_TYPE" == "ANDROID" ]; then
jdk_switcher use openjdk7 %%
tar --absolute-names -jxf android-ndk-r9-linux-x86_64.tar.bz2 &&
export ANDROID_NDK=`pwd`/android-ndk-r9 &&
unzip 4e9e88c03f04.zip &&
rm -rf thirdparty/SDL2/* &&
mv ewing-sdl_androidcmake-4e9e88c03f04/* thirdparty/SDL2/ &&
sudo pip install cpp-coveralls &&
sudo apt-get install --force-yes -qq libtinyxml-dev libjpeg-dev libpng-dev libgif-dev libz-dev libboost-system-dev libboost-thread-dev libboost-date-time-dev ant;
fi
- if [ "$TRAVIS_OS_NAME" == "linux" ] && [ "$BUILD_TYPE" != "ANDROID" ]; then
jdk_switcher use openjdk7 &&
sudo pip install cpp-coveralls &&
sudo apt-get install --force-yes -qq libtinyxml-dev libjpeg-dev libpng-dev libgif-dev libz-dev libboost-system-dev libboost-thread-dev libboost-date-time-dev ant;
fi
- sudo pip install pyjavaproperties
- sudo pip install github3.py
env: env:
global: global:
# - JAVA_HOME=/usr/lib/jvm/java-7-oracle # Force set JVM version to comply with Travis Ant version (1.8.2)
- secure: "EBzr1+qjQsOhn0s+tcFmXR1jP9B0xiOSXuXbRXWZ1OEHNvp8+A5/pS84LYVFlaZqmxr5dApxvPtwhgLIUbQ3EPXm8LpC3KgSD4dS+9/QMbxhe5TK4oczgFRGcDTMJQZsCzhOh7hp3tbcbJg5Gp+VT7aFjFQSHDGwhzSJXsXwh/8=" - secure: "EBzr1+qjQsOhn0s+tcFmXR1jP9B0xiOSXuXbRXWZ1OEHNvp8+A5/pS84LYVFlaZqmxr5dApxvPtwhgLIUbQ3EPXm8LpC3KgSD4dS+9/QMbxhe5TK4oczgFRGcDTMJQZsCzhOh7hp3tbcbJg5Gp+VT7aFjFQSHDGwhzSJXsXwh/8="
- secure: "X5dTQfofqAutnXxmu11Ep2MQ5QYnMN8m0AITRtwymhEF2UclcOudI1+skPtuhAGbWQnSO+lhunV3cvMfw2/Ml3k/VDz6VdFSKFrzAu7ja1VLJfcxr7chi0s8q30pVBb66tGydjIBac3B+RQyqgmZQW1frbRrhC/kPFQ6wPWOJdQ=" - secure: "X5dTQfofqAutnXxmu11Ep2MQ5QYnMN8m0AITRtwymhEF2UclcOudI1+skPtuhAGbWQnSO+lhunV3cvMfw2/Ml3k/VDz6VdFSKFrzAu7ja1VLJfcxr7chi0s8q30pVBb66tGydjIBac3B+RQyqgmZQW1frbRrhC/kPFQ6wPWOJdQ="
- secure: "T97NUPnxCpVZ/c5HH0zfo0FO3DPSRMSmze58ubW5EUTZOjAMtEt+OFdsrNZvUTCugUj2M1agtonZbAbczpaAL+lgZcHDgXgWMkfO0pMnsWX1yyCNqMuE/iTMpJr/xsLQeyWlftWjJLsseQU45abZsd1XVmda/G+ZhrDLF1y55SA=" - secure: "T97NUPnxCpVZ/c5HH0zfo0FO3DPSRMSmze58ubW5EUTZOjAMtEt+OFdsrNZvUTCugUj2M1agtonZbAbczpaAL+lgZcHDgXgWMkfO0pMnsWX1yyCNqMuE/iTMpJr/xsLQeyWlftWjJLsseQU45abZsd1XVmda/G+ZhrDLF1y55SA="
@@ -132,22 +63,8 @@ env:
script: "tools/travis-script.sh" script: "tools/travis-script.sh"
after_success: after_success:
- if [ "$TRAVIS_OS_NAME" == "linux" ] && [ "$BUILD_TYPE" == "Qt" ]; then - coveralls -b . -e JGE/src -e JGE/include -i projects/mtg/include -i projects/mtg/src --gcov-options '\-lp'
coveralls -b . -e JGE/src -e JGE/include -i projects/mtg/include -i projects/mtg/src --gcov-options '\-lp'; - python tools/upload-binaries.py -t $GH_TOKEN -s $TRAVIS_COMMIT -l core.zip -r Wagic-core.zip -b $TRAVIS_BRANCH
fi - python tools/upload-binaries.py -t $GH_TOKEN -s $TRAVIS_COMMIT -l projects/mtg/Android/bin/Wagic-debug.apk -r Wagic-android.apk -b $TRAVIS_BRANCH
- if [ "$BUILD_TYPE" == "ANDROID" ]; then - python tools/upload-binaries.py -t $GH_TOKEN -s $TRAVIS_COMMIT -l projects/mtg/psprelease.zip -r Wagic-psp.zip -b $TRAVIS_BRANCH
python tools/upload-binaries.py -t $GH_TOKEN -s $TRAVIS_COMMIT -l core.zip -r Wagic-core.zip -b $TRAVIS_BRANCH && - python tools/upload-binaries.py -t $GH_TOKEN -s $TRAVIS_COMMIT -l qt-gui-build/linuxqtrelease.zip -r Wagic-linux-QT.zip -b $TRAVIS_BRANCH
python tools/upload-binaries.py -t $GH_TOKEN -s $TRAVIS_COMMIT -l build_android/package/bin/Wagic_*.apk -r Wagic-android.apk -b $TRAVIS_BRANCH;
fi
- if [ "$TRAVIS_OS_NAME" == "linux" ] && [ "$BUILD_TYPE" == "PSP" ]; then
python tools/upload-binaries.py -t $GH_TOKEN -s $TRAVIS_COMMIT -l build_psp/psprelease.zip -r Wagic-psp.zip -b $TRAVIS_BRANCH;
fi
- if [ "$TRAVIS_OS_NAME" == "osx" ] && [ "$BUILD_TYPE" == "iOS" ]; then
python tools/upload-binaries.py -t $GH_TOKEN -s $TRAVIS_COMMIT -l net.wagic_0.19.2-1_iphoneos-arm.deb -r Wagic-iOS.deb -b $TRAVIS_BRANCH;
fi
- if [ "$TRAVIS_OS_NAME" == "osx" ] && [ "$BUILD_TYPE" == "Qt" ]; then
python tools/upload-binaries.py -t $GH_TOKEN -s $TRAVIS_COMMIT -l build_qt_widget/wagic.dmg -r Wagic-macosx.dmg -b $TRAVIS_BRANCH;
fi
- if [ "$TRAVIS_OS_NAME" == "osx" ] && [ "$BUILD_TYPE" == "Emscripten" ]; then
./tools/deploy-emscripten.sh;
fi

Some files were not shown because too many files have changed in this diff Show More