Hello, we apologize but forum registrations are non-functional at this time. This issue should be fixed around mid-December. Until then, please stop by our Discord channel if you'd like to get in touch with the team. Thanks!

Subversion Commit Log

For discussion of the code running behind the game

Moderator: Staff

Locked
User avatar
Roots
Dictator
Posts: 8669
Joined: Wed Jun 16, 2004 12:07 pm
Location: Austin TX
Contact:

Re: Subversion Commit Log

Post by Roots » Mon Jul 25, 2011 4:25 am

Committed revision #2028.
============================================================
Files Modified
M src/modes/mode_bindings.cpp
M src/modes/shop/shop.h
D src/modes/battle/battle_events.cpp
M src/modes/battle/battle_sequence.cpp
D src/modes/battle/battle_events.h
M src/modes/battle/battle_command.cpp
M src/modes/battle/battle_effects.cpp
M src/modes/battle/battle.cpp
M src/modes/battle/battle_command.h
M src/modes/battle/battle.h
M src/modes/battle/battle_actors.cpp
M src/modes/battle/battle_indicators.cpp
M src/modes/map/map_events.cpp
M src/modes/map/map_events.h
M src/modes/map/map_sprites.cpp
M src/modes/map/map_sprites.h
M src/defs.h
M Makefile.am

Primary Changes
All the common media files (images, music, menu sounds, etc) that used to be stored mostly in BattleMode and secondly in BattleCommand are now contained within a new class called BattleMedia (which can be found in battle.h). This class is modeled off of the ShopMedia class that I wrote for shop mode a while back, and its purpose is pretty similar. Its primarily just a container and most members are public. Almost all members are either visual or audio data. There are a few methods to assist in some operations, such as retrieving the appropriate icon for status effects or target types. An object of this class is a member of BattleMode, and a reference to it can be publicly accessed via "BattleMode::GetMedia()".

The MapEvent class and files have been removed. These were an early attempt and providing scripting support in battle mode, but were limited in functionality and have not been used since the demo. What purpose they served has since been replaced by the specific battle script feature, as was explained in this thread: http://www.allacrost.org/forum/viewtopic.php?f=7&t=5416

I changed the way we handle and process music in battle mode. The previous design tried to be flexible enough where we just had a general music container and could load/play things at will. The code that handled all of this was messy and the design not that great either (you had to reference all music by passing around filenames). Instead of all that, now we simply have three MusicDescriptor objects: one for the main battle music, one for the victory theme, and one for the defeat theme. Pretty simple. If we want to change the battle music during battle, I figure the script could just load the battle music descriptor with a new song and play from there. This design is simple and clean, and does everything that we require it to do now. When we need new abilities to manipulate music later, we can extend or alter the design at this time. But for now, simple == good.

Miscellaneous Notes
Windows and OS X project files need to be updated again. :angel:

I'm actually surprised that I didn't have to change any Lua files, since I did change some of the binding code functions. But it looks like map mode has all the wrappers to those calls and no scripts currently use this. I played through the entire game and didn't have any problems so I guess its okay. :shrug: But be on the lookout for any issues, as I did change a lot of code in this commit.

This commit cleans up a lot of the gunk that has been accumulating in the battle code. I think the design will be easier to work with now, and I tried to simplify things where I could.
Image
Silencer
Newbie
Posts: 6
Joined: Thu Jul 21, 2011 5:49 am

Re: Subversion Commit Log

Post by Silencer » Mon Jul 25, 2011 10:43 am

I can't build this project under windows...
roots, do you have skype or smthing so I can contact you ?
User avatar
Roots
Dictator
Posts: 8669
Joined: Wed Jun 16, 2004 12:07 pm
Location: Austin TX
Contact:

Re: Subversion Commit Log

Post by Roots » Mon Jul 25, 2011 12:18 pm

You can try catching me on our IRC channel, but I can't help you with building under Windows because that's completely foreign to me. The person you want to get in touch with is rujasu. He handles our Windows build and packaging.
Image
Silencer
Newbie
Posts: 6
Joined: Thu Jul 21, 2011 5:49 am

Re: Subversion Commit Log

Post by Silencer » Mon Jul 25, 2011 12:25 pm

Maybe it's a Code::block issue, I press run, I receive message "It seems that this project has not been build yet. Do you whant to build it now?" I press yes, the project is compiled, then again I get "It seems that this project has not been build yet. Do you whant to build it now?" I press again YES, an I get:

Code: Select all

WARNING: Can't read file's timestamp: C:\Documents and Settings\EL Doricilos\Desktop\source\src\defs.cpp
WARNING: Can't read file's timestamp: C:\Documents and Settings\EL Doricilos\Desktop\source\src\engine\defs_engine.cpp
WARNING: Can't read file's timestamp: C:\Documents and Settings\EL Doricilos\Desktop\source\src\modes\battle\battle_events.cpp
WARNING: Can't read file's timestamp: C:\Documents and Settings\EL Doricilos\Desktop\source\src\modes\defs_modes.cpp
WARNING: Can't read file's timestamp: C:\Documents and Settings\EL Doricilos\Desktop\source\src\common\global\defs_global.cpp
Linking executable: AllacrostWinDbg.exe
mingw32-g++.exe: Allacrost-Debug\src\defs.o: No such file or directory
mingw32-g++.exe: Allacrost-Debug\src\engine\defs_engine.o: No such file or directory
mingw32-g++.exe: Allacrost-Debug\src\modes\battle\battle_events.o: No such file or directory
mingw32-g++.exe: Allacrost-Debug\src\modes\defs_modes.o: No such file or directory
mingw32-g++.exe: Allacrost-Debug\src\common\global\defs_global.o: No such file or directory
Process terminated with status 1 (0 minutes, 0 seconds)
0 errors, 0 warnings
And I can't do nothing...
User avatar
Roots
Dictator
Posts: 8669
Joined: Wed Jun 16, 2004 12:07 pm
Location: Austin TX
Contact:

Re: Subversion Commit Log

Post by Roots » Mon Jul 25, 2011 12:58 pm

Its because I made a number of file additions, removals, and renames in my last two commits and your project is still looking for those files which no longer exist. The Code::Blocks project file needs to be updated to reflect the new and removed files before its going to be able to build anything. But I have no idea what needs to be done with those project files myself. Your options are to either research how to update the project file yourself (read Code::Blocks documentation) or wait for rujasu to do it.
Image
rujasu
Developer
Posts: 758
Joined: Sat Feb 24, 2007 10:40 pm
Location: Maryland, USA

Re: Subversion Commit Log

Post by rujasu » Mon Jul 25, 2011 1:51 pm

Silencer, you can try doing a "clean" and going in and updating the list of files in the "sources" and "headers" folders in the sidebar. If you go through the last couple of revisions that Roots posted, find the paths with "A" next to them and add them, delete the ones with "D" next to them. Like Roots said, you can look at the documentation to find how to do this.

Alternatively, you can wait for me to do it, but I don't know if I'll be able to get to it right away. If you'd like to give this a shot, feel free to send any questions my way.
Silencer
Newbie
Posts: 6
Joined: Thu Jul 21, 2011 5:49 am

Re: Subversion Commit Log

Post by Silencer » Mon Jul 25, 2011 3:12 pm

Code: Select all

Allacrost-Debug\src\main.o:main.cpp|| undefined reference to `hoa_defs::BindEngineCode()'|
Allacrost-Debug\src\main.o:main.cpp|| undefined reference to `hoa_defs::BindCommonCode()'|
Allacrost-Debug\src\main.o:main.cpp|| undefined reference to `hoa_defs::BindModeCode()'|
Allacrost-Debug\src\modes\battle\battle.o:battle.cpp|| undefined reference to `hoa_battle::private_battle::SequenceSupervisor::SequenceSupervisor(hoa_battle::BattleMode*)'|
Allacrost-Debug\src\modes\battle\battle.o:battle.cpp|| undefined reference to `hoa_battle::private_battle::SequenceSupervisor::SequenceSupervisor(hoa_battle::BattleMode*)'|
Allacrost-Debug\src\modes\battle\battle.o:battle.cpp|| undefined reference to `hoa_battle::private_battle::SequenceSupervisor::~SequenceSupervisor()'|
Allacrost-Debug\src\modes\battle\battle.o:battle.cpp|| undefined reference to `hoa_battle::private_battle::SequenceSupervisor::~SequenceSupervisor()'|
Allacrost-Debug\src\modes\battle\battle.o:battle.cpp|| undefined reference to `hoa_battle::private_battle::SequenceSupervisor::~SequenceSupervisor()'|
Allacrost-Debug\src\modes\battle\battle.o:battle.cpp|| undefined reference to `hoa_battle::private_battle::SequenceSupervisor::Update()'|
Allacrost-Debug\src\modes\battle\battle.o:battle.cpp|| undefined reference to `hoa_battle::private_battle::SequenceSupervisor::Draw()'|
||=== Build finished: 10 errors, 698 warnings ===|
There is hoa_defs::BindEngineCode() in defs.h, but I can't find the implementation of these...
User avatar
Roots
Dictator
Posts: 8669
Joined: Wed Jun 16, 2004 12:07 pm
Location: Austin TX
Contact:

Re: Subversion Commit Log

Post by Roots » Mon Jul 25, 2011 6:33 pm

Your build is still not finding/including the following new files: src/engine/engine_bindings.cpp, src/common/common_bindings.cpp, src/modes/mode_bindings.cpp, src/modes/battle/battle_sequence.h, and src/modes/battle/battle_sequence.cpp.
Image
nemesis
Senior Member
Posts: 157
Joined: Fri Apr 29, 2011 1:53 am
Location: Sachsen/Germany

Re: Subversion Commit Log

Post by nemesis » Sat Jul 30, 2011 2:33 pm

Committed revision #2029.
============================================================
Files Added
  • A img/menus/dialogue_cont_arrow.png
  • A img/menus/dialogue_last_ind.png
Files Modified
  • M src/common/dialogue.cpp
  • M src/common/dialogue.h
  • M src/modes/battle/battle_dialogue.cpp
  • M src/modes/map/map_dialogue.cpp
Primary Changes
Added indicators for dialogues, i.e. a flashing bar if additional lines exist and a flashing bar, if the last line was reached. Nothing will be shown if no user input is processed. Also, the indicators will only be displayer, if the dialogue line is completely shown and not during the delayed printing.

Miscellaneous Notes
Somebody needs to change the indicators.
============================================================
rujasu
Developer
Posts: 758
Joined: Sat Feb 24, 2007 10:40 pm
Location: Maryland, USA

Re: Subversion Commit Log

Post by rujasu » Wed Aug 03, 2011 2:08 am

Committed revision #2030.
============================================================
Files Added
C:\Documents and Settings\rujasu\My Documents\SVN\Allacrost_VS2010\Allacrost.vcxproj
C:\Documents and Settings\rujasu\My Documents\SVN\Allacrost_VS2010\Allacrost.vcxproj.filters
C:\Documents and Settings\rujasu\My Documents\SVN\Allacrost_VS2010\Allacrost2010.sln
C:\Documents and Settings\rujasu\My Documents\SVN\Allacrost_VS2010\Map_Editor.vcxproj
C:\Documents and Settings\rujasu\My Documents\SVN\Allacrost_VS2010\Map_Editor.vcxproj.filters

Files Modified
C:\Documents and Settings\rujasu\My Documents\SVN\Allacrost_VS2010\src\common\dialogue.h
C:\Documents and Settings\rujasu\My Documents\SVN\Allacrost_VS2010\src\editor\grid.h
C:\Documents and Settings\rujasu\My Documents\SVN\Allacrost_VS2010\src\editor\tileset_editor.h
C:\Documents and Settings\rujasu\My Documents\SVN\Allacrost_VS2010\src\engine\video\texture.h
C:\Documents and Settings\rujasu\My Documents\SVN\Allacrost_VS2010\src\engine\video\video.h

Primary Changes
Checked in VS 2010 solution/project files and related code changes. Note that the new solution file is Allacrost2010.sln; the VS2005 version should be deleted or renamed, but I want to keep a naming scheme that indicates the version of VS in case we end up keeping multiple versions.

Miscellaneous Notes
Map editor not tested yet.
I think the Code::Blocks project still needs to be updated, but I won't be able to get to that until next week, as I'm on vacation starting tomorrow.
User avatar
Roots
Dictator
Posts: 8669
Joined: Wed Jun 16, 2004 12:07 pm
Location: Austin TX
Contact:

Re: Subversion Commit Log

Post by Roots » Thu Dec 06, 2012 7:24 pm

It's been too long since I posted in here.

Committed revision #2031.
============================================================
Files Modified
M src/luabind/src/class_rep.cpp
M src/luabind/src/weak_ref.cpp
M src/luabind/src/class.cpp
M src/luabind/src/scope.cpp
M src/luabind/src/inheritance.cpp
M src/luabind/src/open.cpp
M src/luabind/doc/docs.html
M src/luabind/doc/version.rst
M src/luabind/luabind/shared_ptr_converter.hpp
M src/luabind/luabind/weak_ref.hpp
M src/luabind/luabind/wrapper_base.hpp
M src/luabind/luabind/detail/call_function.hpp
M src/luabind/luabind/detail/call_member.hpp
M src/luabind/luabind/detail/constructor.hpp
M src/luabind/luabind/detail/format_signature.hpp
M src/luabind/luabind/detail/object_rep.hpp
M src/luabind/luabind/detail/instance_holder.hpp
D src/luabind/luabind/detail/get_signature.hpp
M src/luabind/luabind/handle.hpp
M src/luabind/luabind/object.hpp
M src/luabind/luabind/scope.hpp
M src/luabind/luabind/make_function.hpp
M src/luabind/luabind/lua_include.hpp
M src/luabind/luabind/operator.hpp
M src/luabind/luabind/class.hpp
M src/luabind/test/test_exceptions.cpp
M src/utils.cpp

Files Deleted
D src/luabind/luabind/detail/get_signature.hpp

Primary Changes
Luabind source has been updated. We are now compiling version 0.9.1 (before it was 0.9.0).

Fixed a compilation issue with Luabind code. It had to do with later versions of Boost build and g++, where the compiler would fail to do a preprocessor macro expansion in an #elif clause. The solution was to replace the "#elif MACRO" with a "#else #if MACRO #endif". Information on this issue can be found here: https://svn.boost.org/trac/boost/ticket/6631

Fixed a compilation issue with src/utils.cpp. A couple system calls were being made that my compiler was not resolving (rmdir() and getuid()). The solution was to #include <unistd.h>, which is where those function calls are defined.

Miscellaneous Notes
These changes still need to be tested on Windows and OS X. I hope that those builds aren't broken from this, but I wouldn't be surprised if there were problems. I did a very brief test and didn't notice any run time problems from the new Luabind code.


I'm really happy that I can now compile Allacrost again. :D
Image
User avatar
Roots
Dictator
Posts: 8669
Joined: Wed Jun 16, 2004 12:07 pm
Location: Austin TX
Contact:

Re: Subversion Commit Log

Post by Roots » Fri Dec 07, 2012 1:37 pm

Committed revision #2032.
============================================================
Files Modified
M src/engine/audio/audio_input.h
M src/engine/audio/audio.cpp
M src/engine/audio/audio.h
M src/engine/audio/audio_input.cpp
M src/main.cpp
M src/defs.h
M src/utils.cpp
M src/utils.h

Primary Changes
Imported changes from VT for main source files.

Imported changes from VT for audio engine. However, I did not add several features that were added to VT due to various concerns, as discussed here: http://www.allacrost.org/forum/viewtopic.php?f=7&t=7101

Known Bugs
In the AudioEngine destructor, code was added to warn about any remaining registered sounds/music, and delete those resources (before it just ignored them). However, I have found that a seg fault will occur on the first delete operation here if you load the cave map and quit the application from there. I've looked into this problem but still haven't really figured out why. I left the bug present in this commit so that we don't forget about it (since the seg fault happens when the program is exiting). It will require some more digging to get to the root of this issue. The workaround for now is to simply comment out those delete calls in AudioEngine's destructor, but like I said I left this bug present in the code so it is not ignored for a long time.
Image
User avatar
Roots
Dictator
Posts: 8669
Joined: Wed Jun 16, 2004 12:07 pm
Location: Austin TX
Contact:

Re: Subversion Commit Log

Post by Roots » Fri Dec 07, 2012 3:19 pm

Committed revision #2033.
============================================================
Files Modified
M src/engine/mode_manager.cpp
M src/engine/mode_manager.h
M src/engine/system.cpp
M src/engine/system.h
M src/modes/boot/boot.cpp
M src/modes/boot/boot.h

Primary Changes
Imported minor changes from VT for engine component files

Fixed a couple function names with typos in the boot code
Image
User avatar
Roots
Dictator
Posts: 8669
Joined: Wed Jun 16, 2004 12:07 pm
Location: Austin TX
Contact:

Re: Subversion Commit Log

Post by Roots » Fri Dec 07, 2012 6:19 pm

Committed revision #2034.
============================================================
Files Modified
M src/engine/engine_bindings.cpp
M src/engine/video/text.cpp
M src/engine/video/fade.cpp
M src/engine/video/texture_controller.cpp
M src/engine/video/fade.h
M src/engine/video/video.h
M src/engine/video/image.cpp
M src/engine/video/particle_manager.cpp
M src/engine/video/video.cpp
M src/engine/video/particle_system.cpp

Primary Changes
- Ambient lighting is fixed (though point lights remain broken)
- Improved screen fading code to be more organized and efficient
- Minor code cleanup in video engine components
Image
rujasu
Developer
Posts: 758
Joined: Sat Feb 24, 2007 10:40 pm
Location: Maryland, USA

Re: Subversion Commit Log

Post by rujasu » Sat Dec 08, 2012 1:03 pm

audio_input.h, line 37:

Code: Select all

#include </home/olsent/dev/valyria_tear/src/engine/audio/audio_input.h>
Forget something? :axe:
User avatar
Roots
Dictator
Posts: 8669
Joined: Wed Jun 16, 2004 12:07 pm
Location: Austin TX
Contact:

Re: Subversion Commit Log

Post by Roots » Sat Dec 08, 2012 2:43 pm

That's really weird. I didn't copy that in there. It must have been something weird that my editor did yesterday (I was playing around with it). I just committed the fix. Thanks for catching that, and I'll try not to do it again. :angel:
Image
User avatar
Roots
Dictator
Posts: 8669
Joined: Wed Jun 16, 2004 12:07 pm
Location: Austin TX
Contact:

Re: Subversion Commit Log

Post by Roots » Mon Dec 10, 2012 2:38 pm

Committed revision #2036.
============================================================
Files Modified
M src/engine/engine_bindings.cpp
M src/engine/video/video.cpp
M src/engine/video/video.h

Primary Changes
- More code imported from VT: adding to and improving upon the image overlay feature
Image
User avatar
Roots
Dictator
Posts: 8669
Joined: Wed Jun 16, 2004 12:07 pm
Location: Austin TX
Contact:

Re: Subversion Commit Log

Post by Roots » Mon Dec 10, 2012 11:03 pm

Committed revision #2037.
============================================================
Files Added
A snd/thunder.wav
A snd/lightning.wav
A img/effects
A img/effects/sand_storm.png
A img/effects/clouds.png
A img/effects/fog.png
A img/effects/dark.png
A dat/effects/lightning.lua

Files Modified
M src/engine/video/video.h
M src/engine/video/video.cpp
M src/engine/mode_manager.cpp
M src/engine/engine_bindings.cpp
M src/engine/mode_manager.h
M src/modes/boot/boot.cpp
M src/modes/map/map.cpp
M dat/maps/opening_scene.lua
A dat/effects/lightning.lua
M Makefile.am

Primary Changes
- Code import from VT: adding new, working code to support lightning effects
- Added visual overlays and effects to the opening scene map. Go check it out! It's pretty awesome.

Miscellaneous Notes
- The way that overlays (lighting, effects like the sandstorm, and lightning) are done right now is a little bit sloppy. This will be something that we can address in the future, but right now I need to move on to more things.
- The video engine code is really a mess right now. Eventually I'd like to clean it up and bring it up to the standard of the rest of our code, but doing so right now will make this code import harder so I'm putting it off. Hope to get around to it after the import is complete, but I can't guarantee.
- The documentation for the video engine is going to be out of date as well with all of these changes. We'll have to remember to go through there and update it as necessary.
- The lightning effect is processed entirely in the video engine, but it includes sound effects along with the visual. This unfortunately means that the video engine now includes code from the audio engine, and I don't feel too comfortable with that. I think that maybe in the future we will want to extract the lightning effect (and any other audio/visual effects) out of the video engine and put it in something like src/common, so we don't intermingle video/audio code like that. That's something for the future though, as for now things work just fine.

Known Bugs
- There may be issues with visual effects not being disabled/re-enabled properly when switching game modes. It's not a critical problem at the moment and we can take care to address it in the future.
- I believe the editor compilation broke a little more, as now it requires the audio engine to be linked into that build since the video engine code uses the audio engine. This isn't a big deal as eventually the editor should have included the audio engine anyway, but I was having linker problems with the compiler. I tried to fix it but couldn't figure out what was wrong. So this is left broken in this commit for now.
- The opening effect in boot mode broke a little (there's no more flash after the sword strike). I'll fix this in a future commit.
Image
User avatar
Roots
Dictator
Posts: 8669
Joined: Wed Jun 16, 2004 12:07 pm
Location: Austin TX
Contact:

Re: Subversion Commit Log

Post by Roots » Tue Dec 11, 2012 6:34 pm

NOTE: The above post I made last night has been heavily edited. I was never able to commit last night because Sourceforge was down, even though I had already written my log entry on here. I spent the next few hours greatly added onto what I had originally intended to be that commit, so I updated it to reflect these changes.
Image
User avatar
Roots
Dictator
Posts: 8669
Joined: Wed Jun 16, 2004 12:07 pm
Location: Austin TX
Contact:

Re: Subversion Commit Log

Post by Roots » Wed Dec 12, 2012 8:00 pm

Committed revision #2038.
============================================================
Files Deleted
D dat/effects/lightning.lua

Files Added
A dat/graphics
A + dat/graphics/lightning.lua

Files Modified
M src/engine/engine_bindings.cpp
M src/engine/video/image.h
M src/engine/video/video.h
M src/engine/video/image.cpp
M src/engine/video/text.h
M src/engine/video/particle_manager.cpp
M src/engine/video/video.cpp
M src/engine/video/text.cpp
M src/engine/video/fade.cpp
M src/engine/video/particle_manager.h
M src/engine/video/effects.cpp
M src/engine/video/fade.h
M src/modes/boot/boot.cpp
M dat/maps/opening_scene.lua

Primary Changes
- Code import from VT: particle engine should now work again. Might have some bugs to fix first though
- Fixed the logo animation sequence in boot mode
- Various minor clean ups and improvements across video engine

Miscellaneous Notes
- This change mostly involved an overhaul of the ParticleManager class. The other particle classes are still a sloppy mess, and looking at the design I think it's clear that at some point this code should be better organized (the code is really spread out and the class hierarchy has some flaws). Unfortunately I have a lot more pressing things to attend to, so I'm not going to be tearing through the particle effect code more than I have to

- There are several particle effect definition files (in Lua) and various images from the VT code that enable particle effects to be used. I have begun copying over those files but have not added them in this commit as it's taking a lot of time to format the definition files properly. I'll add them in sometime later.
Image
Locked