ENIGMA Forums
Outsourcing saves money => Issues Help Desk => Topic started by: Cubic on March 02, 2019, 12:38:45 am
-
Whenever I add some sprites, I get "Compile failed at C++ level" when I compile the project until I reload the project.
Building for mode (0)
Cleaning up from previous executions
- Cleared event info.
Loading shared locals from extensions list
The IDE didn't tell ENIGMA what extensions were selected before requesting a build....Continuing anyway...
Copying resources:
Copying sprite names [39]
Copying sound names [0]
Copying background names [3]
Copying path names [0]
Copying script names [10]
Copying shader names [0]
Copying font names [3]
Copying timeline names [0]
Copying object names [41]
Copying room names [6]
Copying constant names [0]
SYNTAX CHECKING AND PRIMARY PARSING:
10 Scripts:
Parsed `scrInitializeGlobals': 0 locals, 0 globals
Parsed `scrSetGlobalOptions': 0 locals, 0 globals
Parsed `scrSetRoomCaption': 0 locals, 0 globals
Parsed `scrLoadGame': 0 locals, 0 globals
Parsed `scrSaveGame': 0 locals, 0 globals
Parsed `scrPlayerVJump': 0 locals, 0 globals
Parsed `scrPlayerJump': 0 locals, 0 globals
Parsed `scrPlayerShoot': 0 locals, 0 globals
Parsed `scrKillPlayer': 0 locals, 0 globals
Parsed `scrSetPlayerMask': 0 locals, 0 globals
"Linking" scripts
`Linking' 10 scripts and 0 timelines in 4 passes...
Completing script "Link"
Linking `scrInitializeGlobals':
Linking `scrSetGlobalOptions':
Linking `scrSetRoomCaption':
Linking `scrLoadGame':
Linking `scrSaveGame':
Linking `scrPlayerVJump':
Linking `scrPlayerJump':
Linking `scrPlayerShoot':
Linking `scrKillPlayer':
Linking `scrSetPlayerMask':
Done.
Completing timeline "Link"
Done.
41 Objects:
objWorld: 3 events:
Event[0, 0] Check `objWorld::create... Done. Parse... Done.
Event[3, 0] Check `objWorld::step... Done. Parse... Done.
Event[7, 4] Check `objWorld::roomstart... Done. Parse... Done.
objTitleMenu: 1 events:
Event[3, 0] Check `objTitleMenu::step... Done. Parse... Done.
objDifficultyMenu: 3 events:
Event[0, 0] Check `objDifficultyMenu::create... Done. Parse... Done.
Event[3, 0] Check `objDifficultyMenu::step... Done. Parse... Done.
Event[8, 0] Check `objDifficultyMenu::draw... Done. Parse... Done.
objCamera: 3 events:
Event[0, 0] Check `objCamera::create... Done. Parse... Done.
Event[3, 0] Check `objCamera::step... Done. Parse... Done.
Event[7, 10] Check `objCamera::userzero... Done. Parse... Done.
objSmoothCamera: 2 events:
Event[0, 0] Check `objSmoothCamera::create... Done. Parse... Done.
Event[3, 2] Check `objSmoothCamera::endstep... Done. Parse... Done.
objPlayerStart: 1 events:
Event[7, 4] Check `objPlayerStart::roomstart... Done. Parse... Done.
objPlayer: 8 events:
Event[0, 0] Check `objPlayer::create... Done. Parse... Done.
Event[1, 0] Check `objPlayer::destroy... Done. Parse... Done.
Event[3, 0] Check `objPlayer::step... Done. Parse... Done.
Event[3, 2] Check `objPlayer::endstep... Done. Parse... Done.
Event[4, 18] Check `objPlayer::collision_18... Done. Parse... Done.
Event[4, 12] Check `objPlayer::collision_12... Done. Parse... Done.
Event[4, 30] Check `objPlayer::collision_30... Done. Parse... Done.
Event[8, 0] Check `objPlayer::draw... Done. Parse... Done.
objBow: 3 events:
Event[3, 0] Check `objBow::step... Done. Parse... Done.
Event[3, 2] Check `objBow::endstep... Done. Parse... Done.
Event[7, 10] Check `objBow::userzero... Done. Parse... Done.
objBullet: 3 events:
Event[0, 0] Check `objBullet::create... Done. Parse... Done.
Event[2, 0] Check `objBullet::alarm_0... Done. Parse... Done.
Event[4, 12] Check `objBullet::collision_12... Done. Parse... Done.
objBloodEmitter: 3 events:
Event[0, 0] Check `objBloodEmitter::create... Done. Parse... Done.
Event[2, 0] Check `objBloodEmitter::alarm_0... Done. Parse... Done.
Event[3, 0] Check `objBloodEmitter::step... Done. Parse... Done.
objBlood: 4 events:
Event[0, 0] Check `objBlood::create... Done. Parse... Done.
Event[4, 12] Check `objBlood::collision_12... Done. Parse... Done.
Event[4, 18] Check `objBlood::collision_18... Done. Parse... Done.
Event[7, 0] Check `objBlood::outsideroom... Done. Parse... Done.
objGameOver: 4 events:
Event[0, 0] Check `objGameOver::create... Done. Parse... Done.
Event[2, 0] Check `objGameOver::alarm_0... Done. Parse... Done.
Event[8, 0] Check `objGameOver::draw... Done. Parse... Done.
Event[8, 64] Check `objGameOver::drawgui... Done. Parse... Done.
objBlock: 0 events:
objSlipBlock: 1 events:
Event[0, 0] Check `objSlipBlock::create... Done. Parse... Done.
objSlideBlock: 1 events:
Event[0, 0] Check `objSlideBlock::create... Done. Parse... Done.
objBlockInvis: 1 events:
Event[3, 0] Check `objBlockInvis::step... Done. Parse... Done.
objBlockFake: 1 events:
Event[4, 6] Check `objBlockFake::collision_6... Done. Parse... Done.
objWarpStart: 3 events:
Event[0, 0] Check `objWarpStart::create... Done. Parse... Done.
Event[4, 6] Check `objWarpStart::collision_6... Done. Parse... Done.
Event[8, 0] Check `objWarpStart::draw... Done. Parse... Done.
objPlatform: 1 events:
Event[0, 0] Check `objPlatform::create... Done. Parse... Done.
objMovingPlatform: 2 events:
Event[0, 0] Check `objMovingPlatform::create... Done. Parse... Done.
Event[3, 0] Check `objMovingPlatform::step... Done. Parse... Done.
objWarp: 0 events:
objRoomChanger: 0 events:
objMovingPlatformNoBounce: 1 events:
Event[0, 0] Check `objMovingPlatformNoBounce::create... Done. Parse... Done.
objBlockRise: 1 events:
Event[3, 0] Check `objBlockRise::step... Done. Parse... Done.
objBlockFall: 1 events:
Event[3, 0] Check `objBlockFall::step... Done. Parse... Done.
objWalljumpL: 0 events:
objWalljumpR: 0 events:
objSlope: 0 events:
objSlopeDownLeft: 0 events:
objSlopeDownRight: 0 events:
objSlopeUpLeft: 0 events:
objSlopeUpRight: 0 events:
objPlayerKiller: 0 events:
objSpikeUp: 0 events:
objSpikeRight: 0 events:
objSpikeLeft: 0 events:
objSpikeDown: 0 events:
objCherry: 2 events:
Event[0, 0] Check `objCherry::create... Done. Parse... Done.
Event[7, 0] Check `objCherry::outsideroom... Done. Parse... Done.
objSave: 6 events:
Event[0, 0] Check `objSave::create... Done. Parse... Done.
Event[2, 0] Check `objSave::alarm_0... Done. Parse... Done.
Event[4, 6] Check `objSave::collision_6... Done. Parse... Done.
Event[4, 8] Check `objSave::collision_8... Done. Parse... Done.
Event[7, 7] Check `objSave::animationend... Done. Parse... Done.
Event[7, 10] Check `objSave::userzero... Done. Parse... Done.
objSaveMedium: 1 events:
Event[0, 0] Check `objSaveMedium::create... Done. Parse... Done.
objSaveVHard: 1 events:
Event[0, 0] Check `objSaveVHard::create... Done. Parse... Done.
Creating room creation code scope and parsing
"Linking" scripts into the objects...
"Linking" timelines into the objects...
"Link" complete.
Tabulating maximum argument passes to each script
Object `objWorld' calls scrLoadGame with 1 parameters.
Object `objWorld' calls scrSaveGame with 1 parameters.
Finished
Writing executable information and resources.
Writing modes and settings
Writing object switch
Writing resource names and maxima
Writing timeline control information
Linking globals and ambiguous variables
Running Secondary Parse Passes
Add dot accessed local gameStarted
var
Add dot accessed local timeMicro
var
Add dot accessed local time
var
Add dot accessed local restartButton
var
Add dot accessed local jumpButton
var
Add dot accessed local leftButton
var
Add dot accessed local rightButton
var
Add dot accessed local grav
var
Add dot accessed local difficulty
var
Add dot accessed local autosave
var
Add dot accessed local slip
var
Add dot accessed local h
var
Add dot accessed local shootButton
var
Add dot accessed local suicideButton
var
Add dot accessed local adAlign
var
Add dot accessed local alignLeftButton
var
Add dot accessed local alignRightButton
var
Add dot accessed local edgeDeath
var
Add dot accessed local yspeed
var
Add dot accessed local debugShowHitbox
var
Add dot accessed local delayBow
var
Add dot accessed local xScale
var
Add dot accessed local savenum
var
Add dot accessed local startRoom
var
Add dot accessed local death
var
Add dot accessed local gameClear
var
Add dot accessed local saveRoom
var
Add dot accessed local savePlayerX
var
Add dot accessed local secretItemTotal
var
Add dot accessed local secretItem
var
Add dot accessed local saveSecretItem
var
Add dot accessed local bossItemTotal
var
Add dot accessed local bossItem
var
Add dot accessed local saveBossItem
var
Add dot accessed local saveGameClear
var
Add dot accessed local roomCaptionDef
var
Add dot accessed local savePlayerY
var
Add dot accessed local saveGrav
var
Add dot accessed local noPause
var
Add dot accessed local saveMap
var
Add dot accessed local onPlatform
var
Add dot accessed local jump
var
Add dot accessed local djump
var
Add dot accessed local jump2
var
Add dot accessed local dif
var
Add dot accessed local difName
var
Writing events
Writing object data
Writing local accessors
Writing font data
Writing room data
Writing shader data
Running make from `make'
Full command line: make Game WORKDIR="C:/Users/h7613/AppData/Local/ENIGMA/" CODEGEN="C:/Users/h7613/AppData/Local/ENIGMA/" GMODE="Run" GRAPHICS="OpenGL1" AUDIO="DirectSound" COLLISION="Precise" WIDGETS="Win32" NETWORKING="None" PLATFORM="Win32" TARGET-PLATFORM="Windows" CXXFLAGS="-std=c++11 -I/mingw64/lib/libffi-3.2.1/include -I../Additional/i686-w64-mingw32/include" LDFLAGS="-L../Additional/i686-w64-mingw32/lib -static-libgcc -static-libstdc++ -static" MAKE="make" COMPILEPATH="Windows/Windows/Mingw_GCC_G++" EXTENSIONS=" Universal_System/Extensions/Paths Universal_System/Extensions/DateTime Universal_System/Extensions/MotionPlanning Universal_System/Extensions/DataStructures Universal_System/Extensions/Alarms Universal_System/Extensions/Timelines Universal_System/Extensions/libpng Universal_System/Extensions/ParticleSystems" OUTPUTNAME="C:/msys64/tmp/egm6621054682461166441.exe"
make -C ENIGMAsystem/SHELL
make[1]: 进入目录“/ENIGMA/enigma-dev-64/ENIGMAsystem/SHELL”
g++ -std=c++11 -I/mingw64/lib/libffi-3.2.1/include -I../Additional/i686-w64-mingw32/include -Wall -s -O3 -fno-rtti -fno-exceptions -DENIGMA_PLATFORM_WINDOWS -DGLEW_STATIC -DPATH_EXT_SET -I../../shared/libpng-util -IPlatforms/Win32/Info -IGraphics_Systems/OpenGL1/Info -IAudio_Systems/DirectSound/Info -ICollision_Systems/Precise/Info -IWidget_Systems/Win32/Info -INetworking_Systems/None/Info -IUniversal_System/Info -I. -IC:/Users/h7613/AppData/Local/ENIGMA/ -I../../shared -MMD -MP -c -o C:/Users/h7613/AppData/Local/ENIGMA/.eobjs/Windows/Windows/Mingw_GCC_G++/Run/SHELLmain.o SHELLmain.cpp
In file included from SHELLmain.cpp:93:0:
C:/Users/h7613/AppData/Local/ENIGMA/Preprocessor_Environment_Editable/IDE_EDIT_resourcenames.h: In function 'std::__cxx11::string enigma_user::object_get_name(int)':
C:/Users/h7613/AppData/Local/ENIGMA/Preprocessor_Environment_Editable/IDE_EDIT_resourcenames.h:99:7: error: duplicate case value
case 19: return "objWarp";
^~~~
C:/Users/h7613/AppData/Local/ENIGMA/Preprocessor_Environment_Editable/IDE_EDIT_resourcenames.h:98:7: note: previously used here
case 19: return "objMovingPlatform";
^~~~
C:/Users/h7613/AppData/Local/ENIGMA/Preprocessor_Environment_Editable/IDE_EDIT_resourcenames.h:101:7: error: duplicate case value
case 20: return "objMovingPlatformNoBounce";
^~~~
C:/Users/h7613/AppData/Local/ENIGMA/Preprocessor_Environment_Editable/IDE_EDIT_resourcenames.h:100:7: note: previously used here
case 20: return "objRoomChanger";
^~~~
In file included from Universal_System/instance_create.h:52:0,
from SHELLmain.cpp:116:
C:/Users/h7613/AppData/Local/ENIGMA/Preprocessor_Environment_Editable/IDE_EDIT_object_switch.h: In function 'void enigma::instance_change_inst(int, bool, enigma::object_graphics*)':
C:/Users/h7613/AppData/Local/ENIGMA/Preprocessor_Environment_Editable/IDE_EDIT_object_switch.h:95:1: error: duplicate case value
case 19:
^~~~
C:/Users/h7613/AppData/Local/ENIGMA/Preprocessor_Environment_Editable/IDE_EDIT_object_switch.h:92:1: note: previously used here
case 19:
^~~~
C:/Users/h7613/AppData/Local/ENIGMA/Preprocessor_Environment_Editable/IDE_EDIT_object_switch.h:101:1: error: duplicate case value
case 20:
^~~~
C:/Users/h7613/AppData/Local/ENIGMA/Preprocessor_Environment_Editable/IDE_EDIT_object_switch.h:98:1: note: previously used here
case 20:
^~~~
In file included from Universal_System/instance_create.h:78:0,
from SHELLmain.cpp:116:
C:/Users/h7613/AppData/Local/ENIGMA/Preprocessor_Environment_Editable/IDE_EDIT_object_switch.h: In function 'enigma::object_basic* enigma::instance_create_id(int, int, int, int)':
C:/Users/h7613/AppData/Local/ENIGMA/Preprocessor_Environment_Editable/IDE_EDIT_object_switch.h:95:1: error: duplicate case value
case 19:
^~~~
C:/Users/h7613/AppData/Local/ENIGMA/Preprocessor_Environment_Editable/IDE_EDIT_object_switch.h:92:1: note: previously used here
case 19:
^~~~
C:/Users/h7613/AppData/Local/ENIGMA/Preprocessor_Environment_Editable/IDE_EDIT_object_switch.h:101:1: error: duplicate case value
case 20:
^~~~
C:/Users/h7613/AppData/Local/ENIGMA/Preprocessor_Environment_Editable/IDE_EDIT_object_switch.h:98:1: note: previously used here
case 20:
^~~~
In file included from Universal_System/instance_create.h:98:0,
from SHELLmain.cpp:116:
C:/Users/h7613/AppData/Local/ENIGMA/Preprocessor_Environment_Editable/IDE_EDIT_object_switch.h: In function 'enigma::instance_t enigma_user::instance_create(int, int, int)':
C:/Users/h7613/AppData/Local/ENIGMA/Preprocessor_Environment_Editable/IDE_EDIT_object_switch.h:95:1: error: duplicate case value
case 19:
^~~~
C:/Users/h7613/AppData/Local/ENIGMA/Preprocessor_Environment_Editable/IDE_EDIT_object_switch.h:92:1: note: previously used here
case 19:
^~~~
C:/Users/h7613/AppData/Local/ENIGMA/Preprocessor_Environment_Editable/IDE_EDIT_object_switch.h:101:1: error: duplicate case value
case 20:
^~~~
C:/Users/h7613/AppData/Local/ENIGMA/Preprocessor_Environment_Editable/IDE_EDIT_object_switch.h:98:1: note: previously used here
case 20:
^~~~
In file included from Universal_System/instance_create.h:127:0,
from SHELLmain.cpp:116:
C:/Users/h7613/AppData/Local/ENIGMA/Preprocessor_Environment_Editable/IDE_EDIT_object_switch.h: In function 'void enigma_user::instance_copy(bool)':
C:/Users/h7613/AppData/Local/ENIGMA/Preprocessor_Environment_Editable/IDE_EDIT_object_switch.h:95:1: error: duplicate case value
case 19:
^~~~
C:/Users/h7613/AppData/Local/ENIGMA/Preprocessor_Environment_Editable/IDE_EDIT_object_switch.h:92:1: note: previously used here
case 19:
^~~~
C:/Users/h7613/AppData/Local/ENIGMA/Preprocessor_Environment_Editable/IDE_EDIT_object_switch.h:101:1: error: duplicate case value
case 20:
^~~~
C:/Users/h7613/AppData/Local/ENIGMA/Preprocessor_Environment_Editable/IDE_EDIT_object_switch.h:98:1: note: previously used here
case 20:
^~~~
rm -f C:/Users/h7613/AppData/Local/ENIGMA/.eobjs/Windows/Windows/Mingw_GCC_G++/Run/Universal_System/loading.o C:/Users/h7613/AppData/Local/ENIGMA/.eobjs/Windows/Windows/Mingw_GCC_G++/Run/Universal_System/Extensions/MotionPlanning/motion_planning.o
make[1]: Leave directory“/ENIGMA/enigma-dev-64/ENIGMAsystem/SHELL”
make: *** [Makefile:20:Game] error 2
-
hi there and welcome!
based on the code.....it seems that
- you have some duplicate names for your resources. these could either be sprite and object having the same names. its best to have a prefix for all the resources followed by its name to distinguish them. eg... [spr_dog as a sprite] and [obj_dog] as an object.
- if this is a GM file you're trying to import into Enigma, please note that not all "GM functions" will work in Enigma. ENIGMA enables most of GM6 up to GMS 1.2 projects to work. Best are GM8 in my honest opinion.
- you could check your scripts code for any irregularities in the function names
- check the Extensions sections of the Configuration dialog and see if all the required extensions are present and activated.
hope i helped you a little.
-
seems like you stumbled on this bug with lateralgm https://enigma-dev.org/forums/index.php?topic=2957.0
try the fix from that topic. you can also wait for a new ide which is currently under development
-
Thanks.
-
You clearly have objects and resources with duplicate ids. The engine can't resolve the differences, hence the error. I suggest making a backup copy of your project and using the defragment ids feature of LateralGM. In fact, the latest version of LGM should have warned you when you loaded the project.