[escape-from-the-masters-lair] push by DarkOppr...@gmail.com - Fixed a couple of template related bugs. Tweaked balance. Improved the... on 2011-04-21 11:06 GMT

1 view
Skip to first unread message

escape-from-th...@googlecode.com

unread,
Apr 21, 2011, 7:06:36 AM4/21/11
to escape-from-th...@googlegroups.com
Revision: 21abffd94bbd
Author: Kevin Wells <DarkOp...@gmail.com>
Date: Thu Apr 21 04:05:54 2011
Log: Fixed a couple of template related bugs. Tweaked balance.
Improved the item info window. Reorganized docs. Added a readme, and began
writing the guidebook.
http://code.google.com/p/escape-from-the-masters-lair/source/detail?r=21abffd94bbd

Added:
/docs/guidebook
/docs/third party licenses/LICENSE_MersenneTwister
/docs/third party licenses/LICENSE_SDL
/docs/third party licenses/LICENSE_boost_1_0
/docs/third party licenses/LICENSE_glew
/docs/third party licenses/LICENSE_libfov
Deleted:
/docs/LICENSE_MersenneTwister
/docs/LICENSE_SDL
/docs/LICENSE_boost_1_0
/docs/LICENSE_glew
/docs/LICENSE_libfov
Modified:
/Development/Items.rtf
/creature.cpp
/creature_combat.cpp
/docs/readme
/dungeon_generation.cpp
/player.cpp
/player_windows.cpp
/templates.cpp
/version.h

=======================================
--- /dev/null
+++ /docs/guidebook Thu Apr 21 04:05:54 2011
@@ -0,0 +1,63 @@
+//===Escape from the Master's Lair - Guidebook===\\
+//========A Primer on the Lair of Loathing=======\\
+
+== Getting Started ==
+
+ So, you've decided to play the game. Good for you! You have taken your
first step into
+ a larger world. Well, a relatively fun one, anyway. But I digress...
+
+ When you run the game, you will find yourself on the name entry screen,
also known as the
+ "Who are you?" screen. When you type in your name, you are choosing the
name for the character
+ you will be controlling, and the name for any save file(s) associated
with this particular
+ playthrough, so choose a name you like. You wouldn't want to get a great
score and have an
+ ugly name up there on the highscores board now, would you?
+
+ After entering your name, you will be asked to select a race. Races carry
with them a variety of
+ bonuses and penalties, and these are hinted at by the descriptions
attached to each race.
+ Simply type in the number of the race you wish you be, and a description
will pop up
+ at the bottom of the screen. When you are happy with your choice, press
enter.
+
+ It should be said that the escape key will go back to the previous screen
while in any
+ of these character creation screens. This is also a good time to mention
the
+ "make my character for me" options that are available to you. At any
time, you can press '=' to
+ have the game create a decent character for you from scratch. Or, you can
press '!' to have the
+ game create a random character. If you don't want the game to create a
complete character for you,
+ you can use '-' to automatically make decent choices for you on the
current screen only. Again,
+ you can instead press '*' to have the game make random automatic choices
on the current screen instead.
+ The random automated choices are not recommended for beginners, children,
small animals, or people
+ who are easily frightened.
+
+ After you have chosen a race, you will be asked to select exactly 3
skills to "focus" on.
+ Your focused skills gain one level right when the game starts, and
contribute more to your
+ attribute multipliers each level (more on that later). Put simply, you
want to choose the 3 skills
+ that best represent the style of play you want to employ with this
character. For example, say you
+ chose a gnome as your race. Gnomes have a big bonus to their Stabbing
Weapons skill, so you would
+ probably want to select Stabbing Weapons as one of your focused skills.
+
+ The final screen in character creation is the starting items screen.
Here, you can select from
+ a wide variety of items to start your character out with. Let's look to
our gnome example from the
+ previous paragraph. Our gnome has a bonus to the Stabbing Weapons skill,
and has also focused in that
+ same skill. So, shouldn't we start him off with a stabbing weapon of some
kind? Indeed, we should.
+ As it happens, there is exactly one such weapon on this starting items
list. The spear. So, we
+ select the spear. At the top of the screen, you can see your starting
gold, which is a fancy name
+ for "arbitrary points used to prevent you from starting with all the
items." Using the remaining gold,
+ you can buy some armor, and perhaps a bottle of water or something. It's
all pretty useful stuff.
+
+ So, we've finally finished creating our character, and we've progressed
on to the story screen. Here,
+ you are given a brief introduction to who you are, and why you are doing
what you are doing.
+
+ At last, we can actually begin playing the game! The following section
gives an overview
+ of the controls you will need to know to succeed in the Lair of Loathing.
Go forth, and attain
+ your destiny!
+
+== Controls ==
+
+ == Movement ==
+
+ You can move in
+ First off, you have a few options for moving around the dungeon.
+ You can use the arrow keys, but with those, you can only move
orthogonally.
+
+== Extended Commands ==
+
+
=======================================
--- /dev/null
+++ /docs/third party licenses/LICENSE_MersenneTwister Thu Apr 21 04:05:54
2011
@@ -0,0 +1,58 @@
+The following notice is included in MersenneTwister.h:
+
+// MersenneTwister.h
+// Mersenne Twister random number generator -- a C++ class MTRand
+// Based on code by Makoto Matsumoto, Takuji Nishimura, and Shawn Cokus
+// Richard J. Wagner v1.1 28 September 2009 wag...@umich.edu
+
+// The Mersenne Twister is an algorithm for generating random numbers. It
+// was designed with consideration of the flaws in various other
generators.
+// The period, 2^19937-1, and the order of equidistribution, 623
dimensions,
+// are far greater. The generator is also fast; it avoids multiplication
and
+// division, and it benefits from caches and pipelines. For more
information
+// see the inventors' web page at
+// http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/emt.html
+
+// Reference
+// M. Matsumoto and T. Nishimura, "Mersenne Twister: A 623-Dimensionally
+// Equidistributed Uniform Pseudo-Random Number Generator", ACM
Transactions on
+// Modeling and Computer Simulation, Vol. 8, No. 1, January 1998, pp 3-30.
+
+// Copyright (C) 1997 - 2002, Makoto Matsumoto and Takuji Nishimura,
+// Copyright (C) 2000 - 2009, Richard J. Wagner
+// All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions
+// are met:
+//
+// 1. Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+//
+// 2. Redistributions in binary form must reproduce the above copyright
+// notice, this list of conditions and the following disclaimer in the
+// documentation and/or other materials provided with the
distribution.
+//
+// 3. The names of its contributors may not be used to endorse or promote
+// products derived from this software without specific prior written
+// permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
IS"
+// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE
+// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE
+// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
BE
+// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
THE
+// POSSIBILITY OF SUCH DAMAGE.
+
+// The original code included the following notice:
+//
+// When you use this, send an email to:
m-...@math.sci.hiroshima-u.ac.jp
+// with an appropriate reference to your work.
+//
+// It would be nice to CC: wag...@umich.edu and Co...@math.washington.edu
+// when you write.
=======================================
--- /dev/null
+++ /docs/third party licenses/LICENSE_SDL Thu Apr 21 04:05:54 2011
@@ -0,0 +1,13 @@
+
+Please distribute this file with the SDL runtime environment:
+
+The Simple DirectMedia Layer (SDL for short) is a cross-platfrom library
+designed to make it easy to write multi-media software, such as games and
+emulators.
+
+The Simple DirectMedia Layer library source code is available from:
+http://www.libsdl.org/
+
+This library is distributed under the terms of the GNU LGPL license:
+http://www.gnu.org/copyleft/lesser.html
+
=======================================
--- /dev/null
+++ /docs/third party licenses/LICENSE_boost_1_0 Thu Apr 21 04:05:54 2011
@@ -0,0 +1,23 @@
+Boost Software License - Version 1.0 - August 17th, 2003
+
+Permission is hereby granted, free of charge, to any person or organization
+obtaining a copy of the software and accompanying documentation covered by
+this license (the "Software") to use, reproduce, display, distribute,
+execute, and transmit the Software, and to prepare derivative works of the
+Software, and to permit third-parties to whom the Software is furnished to
+do so, all subject to the following:
+
+The copyright notices in the Software and this entire statement, including
+the above license grant, this restriction and the following disclaimer,
+must be included in all copies of the Software, in whole or in part, and
+all derivative works of the Software, unless such copies or derivative
+works are solely in the form of machine-executable object code generated by
+a source language processor.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
+SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
+FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
+ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+DEALINGS IN THE SOFTWARE.
=======================================
--- /dev/null
+++ /docs/third party licenses/LICENSE_glew Thu Apr 21 04:05:54 2011
@@ -0,0 +1,73 @@
+The OpenGL Extension Wrangler Library
+Copyright (C) 2002-2007, Milan Ikits <milan ikits[]ieee org>
+Copyright (C) 2002-2007, Marcelo E. Magallon <mmagallo[]debian org>
+Copyright (C) 2002, Lev Povalahev
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+* Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+* Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimer in the documentation
+ and/or other materials provided with the distribution.
+* The name of the author may be used to endorse or promote products
+ derived from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+THE POSSIBILITY OF SUCH DAMAGE.
+
+
+Mesa 3-D graphics library
+Version: 7.0
+
+Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a
+copy of this software and associated documentation files (the "Software"),
+to deal in the Software without restriction, including without limitation
+the rights to use, copy, modify, merge, publish, distribute, sublicense,
+and/or sell copies of the Software, and to permit persons to whom the
+Software is furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included
+in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+
+Copyright (c) 2007 The Khronos Group Inc.
+
+Permission is hereby granted, free of charge, to any person obtaining a
+copy of this software and/or associated documentation files (the
+"Materials"), to deal in the Materials without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Materials, and to
+permit persons to whom the Materials are furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be included
+in all copies or substantial portions of the Materials.
+
+THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
+CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
=======================================
--- /dev/null
+++ /docs/third party licenses/LICENSE_libfov Thu Apr 21 04:05:54 2011
@@ -0,0 +1,20 @@
+Copyright (c) 2006 Greg McIntyre
+All rights reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a
copy of
+this software and associated documentation files (the "Software"), to deal
in
+the Software without restriction, including without limitation the rights
to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies
+of the Software, and to permit persons to whom the Software is furnished
to do
+so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE
+SOFTWARE.
=======================================
--- /docs/LICENSE_MersenneTwister Wed Apr 20 12:30:03 2011
+++ /dev/null
@@ -1,58 +0,0 @@
-The following notice is included in MersenneTwister.h:
-
-// MersenneTwister.h
-// Mersenne Twister random number generator -- a C++ class MTRand
-// Based on code by Makoto Matsumoto, Takuji Nishimura, and Shawn Cokus
-// Richard J. Wagner v1.1 28 September 2009 wag...@umich.edu
-
-// The Mersenne Twister is an algorithm for generating random numbers. It
-// was designed with consideration of the flaws in various other
generators.
-// The period, 2^19937-1, and the order of equidistribution, 623
dimensions,
-// are far greater. The generator is also fast; it avoids multiplication
and
-// division, and it benefits from caches and pipelines. For more
information
-// see the inventors' web page at
-// http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/emt.html
-
-// Reference
-// M. Matsumoto and T. Nishimura, "Mersenne Twister: A 623-Dimensionally
-// Equidistributed Uniform Pseudo-Random Number Generator", ACM
Transactions on
-// Modeling and Computer Simulation, Vol. 8, No. 1, January 1998, pp 3-30.
-
-// Copyright (C) 1997 - 2002, Makoto Matsumoto and Takuji Nishimura,
-// Copyright (C) 2000 - 2009, Richard J. Wagner
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions
-// are met:
-//
-// 1. Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//
-// 2. Redistributions in binary form must reproduce the above copyright
-// notice, this list of conditions and the following disclaimer in the
-// documentation and/or other materials provided with the
distribution.
-//
-// 3. The names of its contributors may not be used to endorse or promote
-// products derived from this software without specific prior written
-// permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
IS"
-// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE
-// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE
-// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
BE
-// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
THE
-// POSSIBILITY OF SUCH DAMAGE.
-
-// The original code included the following notice:
-//
-// When you use this, send an email to:
m-...@math.sci.hiroshima-u.ac.jp
-// with an appropriate reference to your work.
-//
-// It would be nice to CC: wag...@umich.edu and Co...@math.washington.edu
-// when you write.
=======================================
--- /docs/LICENSE_SDL Wed Apr 20 12:30:03 2011
+++ /dev/null
@@ -1,13 +0,0 @@
-
-Please distribute this file with the SDL runtime environment:
-
-The Simple DirectMedia Layer (SDL for short) is a cross-platfrom library
-designed to make it easy to write multi-media software, such as games and
-emulators.
-
-The Simple DirectMedia Layer library source code is available from:
-http://www.libsdl.org/
-
-This library is distributed under the terms of the GNU LGPL license:
-http://www.gnu.org/copyleft/lesser.html
-
=======================================
--- /docs/LICENSE_boost_1_0 Wed Apr 20 12:30:03 2011
+++ /dev/null
@@ -1,23 +0,0 @@
-Boost Software License - Version 1.0 - August 17th, 2003
-
-Permission is hereby granted, free of charge, to any person or organization
-obtaining a copy of the software and accompanying documentation covered by
-this license (the "Software") to use, reproduce, display, distribute,
-execute, and transmit the Software, and to prepare derivative works of the
-Software, and to permit third-parties to whom the Software is furnished to
-do so, all subject to the following:
-
-The copyright notices in the Software and this entire statement, including
-the above license grant, this restriction and the following disclaimer,
-must be included in all copies of the Software, in whole or in part, and
-all derivative works of the Software, unless such copies or derivative
-works are solely in the form of machine-executable object code generated by
-a source language processor.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-DEALINGS IN THE SOFTWARE.
=======================================
--- /docs/LICENSE_glew Wed Apr 20 12:30:03 2011
+++ /dev/null
@@ -1,73 +0,0 @@
-The OpenGL Extension Wrangler Library
-Copyright (C) 2002-2007, Milan Ikits <milan ikits[]ieee org>
-Copyright (C) 2002-2007, Marcelo E. Magallon <mmagallo[]debian org>
-Copyright (C) 2002, Lev Povalahev
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice,
- this list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice,
- this list of conditions and the following disclaimer in the documentation
- and/or other materials provided with the distribution.
-* The name of the author may be used to endorse or promote products
- derived from this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-THE POSSIBILITY OF SUCH DAMAGE.
-
-
-Mesa 3-D graphics library
-Version: 7.0
-
-Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
-
-Permission is hereby granted, free of charge, to any person obtaining a
-copy of this software and associated documentation files (the "Software"),
-to deal in the Software without restriction, including without limitation
-the rights to use, copy, modify, merge, publish, distribute, sublicense,
-and/or sell copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included
-in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
-BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-
-Copyright (c) 2007 The Khronos Group Inc.
-
-Permission is hereby granted, free of charge, to any person obtaining a
-copy of this software and/or associated documentation files (the
-"Materials"), to deal in the Materials without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Materials, and to
-permit persons to whom the Materials are furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be included
-in all copies or substantial portions of the Materials.
-
-THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
=======================================
--- /docs/LICENSE_libfov Wed Apr 20 12:30:03 2011
+++ /dev/null
@@ -1,20 +0,0 @@
-Copyright (c) 2006 Greg McIntyre
-All rights reserved.
-
-Permission is hereby granted, free of charge, to any person obtaining a
copy of
-this software and associated documentation files (the "Software"), to deal
in
-the Software without restriction, including without limitation the rights
to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies
-of the Software, and to permit persons to whom the Software is furnished
to do
-so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE
-SOFTWARE.
=======================================
--- /Development/Items.rtf Wed Apr 20 02:37:11 2011
+++ /Development/Items.rtf Thu Apr 21 04:05:54 2011
@@ -7,24 +7,6 @@
\strike Heavier armor carries penalties to some things, which can be
offset by a higher armor skill.\strike0\par
\strike Heavy armor penalties (these penalties can grow steeper with
increasingly heavy armor) - decreased movement_speed\strike0 , hinders
spellcasting\par
\par
-To find item weight, multiply size by specific gravity and divide by 2.\par
-To find armor defense, multiply size by toughness and divide by 8.\par
-Melee damage is 1-x.\par
-\tab To find x, multiply size by weight/2, and then divide by 8.\par
-EXCEPTION: For actual melee weapons, damage is x-y.\par
-\tab To find x, multiply size by toughness, and multiply by 3.\par
-\tab To find y, multiply size by toughness, and multiply by 4.\par
-\tab I may need to figure out how to handle a melee weapon that has a
thrown damage bonus. I am thinking of daggers specifically here.\par
-Thrown damage is 1-x.\par
-\tab To find x, divide melee's x by 2.\par
-EXCEPTION: For actual throwing weapons, damage is x-y.\par
-\tab To find x, multiply size by toughness and multiply by 3.\par
-\tab To find y, multiply size by toughness, and multiply by 4.\par
-Ranged damage is 0-0.\par
-EXCEPTION: For actual ranged weapons, damage is x-y.\par
-\tab To find x, multiply size by toughness, and multiply by 0.25.\par
-\tab To find y, multiply size by toughness, and multiply by 0.35.\par
-\par
Item categories:\par
-Weapons\par
\tab -Melee and Ranged\par
=======================================
--- /creature.cpp Wed Apr 20 05:54:06 2011
+++ /creature.cpp Thu Apr 21 04:05:54 2011
@@ -128,15 +128,20 @@
//Apply the selected template to the item.
temp_item=templates.template_items[item_category][item_index];

+ //Default size is simply the size from this item's template.
+ double
temp_item_size=templates.template_items[item_category][item_index].size;
+
//If the item is set to have a random size.

if(templates.template_items[item_category][item_index].random_size){
-
templates.template_items[item_category][item_index].size=templates.determine_item_size(&temp_item,item_category,item_index);
+
temp_item_size=templates.determine_item_size(&temp_item,item_category,item_index);
}

//If this item's template has only certain materials allowed.

if(templates.template_items[item_category][item_index].allowed_materials.size()>0){

templates.determine_item_material(&temp_item,item_category,item_index);
}
+
+ templates.calculate_item_attributes(&temp_item,temp_item_size);

//Run the item's setup function.
temp_item.setup();
=======================================
--- /creature_combat.cpp Wed Apr 20 22:50:31 2011
+++ /creature_combat.cpp Thu Apr 21 04:05:54 2011
@@ -55,7 +55,7 @@
bool enough_strength=true;

//If the creature does not have sufficient strength to wield
this item.
-
if((int)(inventory[item_identifier].weight*1.5)>return_attribute_strength()){
+
if((int)(inventory[item_identifier].weight*0.25)>return_attribute_strength()){
weapons_under_strength++;
enough_strength=false;
}
=======================================
--- /docs/readme Thu Apr 21 00:29:03 2011
+++ /docs/readme Thu Apr 21 04:05:54 2011
@@ -1,3 +1,32 @@
-For Windows, run Escape.exe
-
-For Linux, run ./Escape
+ //-------------------------\\
+ // \\
+ // Escape from the Master's Lair \\
+ // Version 0.4 \\ v
+~*~ // \\ **~/_\
+
+== Welcome! ==
+
+ Thank you for downloading Escape from the Master's Lair!
+
+== Installation Instructions ==
+
+ Simply extract this archive anywhere, and...
+
+ * For Windows, run the included Escape.exe
+
+ * For Linux, run the included ./Escape
+
+ For help actually playing the game, please refer to the included
guidebook.
+ Or, check out the contact options below.
+
+== Contact Information ==
+
+ Check out the official site for the game here:
http://cheeseandbacon.org/escape/
+
+ There is a forum for the game located here:
http://cheeseandbacon.org/forum/viewforum.php?f=16
+
+ Questions, comments, suggestions, bug reports, complaints?
+ Contact me at: darkop...@gmail.com
+
+/* Copyright (c) 2011 Kevin Wells */
+/* Escape from the Master's Lair may be freely redistributed. See license
for details. */
=======================================
--- /dungeon_generation.cpp Wed Apr 20 10:59:15 2011
+++ /dungeon_generation.cpp Thu Apr 21 04:05:54 2011
@@ -794,15 +794,20 @@
//Apply the selected template to the item.

generated_items[generated_items.size()-1]=templates.template_items[random_item_category][random_item_template];

+ //Default size is simply the size from this item's template.
+ double
temp_item_size=templates.template_items[random_item_category][random_item_template].size;
+
//If the item is set to have a random size.

if(templates.template_items[random_item_category][random_item_template].random_size){
-
templates.template_items[random_item_category][random_item_template].size=templates.determine_item_size(&generated_items[generated_items.size()-1],random_item_category,random_item_template);
+
temp_item_size=templates.determine_item_size(&generated_items[generated_items.size()-1],random_item_category,random_item_template);
}

//If this item's template has only certain materials allowed.

if(templates.template_items[random_item_category][random_item_template].allowed_materials.size()>0){

templates.determine_item_material(&generated_items[generated_items.size()-1],random_item_category,random_item_template);
}
+
+
templates.calculate_item_attributes(&generated_items[generated_items.size()-1],temp_item_size);

//Run the item's setup function.
generated_items[generated_items.size()-1].setup();
=======================================
--- /player.cpp Wed Apr 20 23:17:34 2011
+++ /player.cpp Thu Apr 21 04:05:54 2011
@@ -284,6 +284,17 @@
break;

case SDL_KEYDOWN:
+ if(event.key.keysym.sym==SDLK_PAGEUP){
+ if(text_log_display_position<text_log.size()-1){
+ text_log_display_position++;
+ }
+ }
+ else if(event.key.keysym.sym==SDLK_PAGEDOWN){
+ if(text_log_display_position>5 &&
text_log[text_log_display_position-1]!="\x1F"){
+ text_log_display_position--;
+ }
+ }
+
if(!chat_mode){
if(current_window==WINDOW_INVENTORY){
handle_input_inventory();
=======================================
--- /player_windows.cpp Wed Apr 20 22:50:31 2011
+++ /player_windows.cpp Thu Apr 21 04:05:54 2011
@@ -1292,8 +1292,16 @@
else{
ss.clear();ss.str("");ss<<"This item is composed
of ";ss<<material_to_string(inventory[item_info].material);ss<<".";ss<<"\xA";msg=ss.str();
}
- ss.clear();ss.str("");ss<<"It
weighs ";ss<<(int)inventory[item_info].weight;ss<<".";ss<<"\xA";msg+=ss.str();
- ss.clear();ss.str("");ss<<"It
requires ";ss<<(int)(inventory[item_info].weight*1.5);ss<<" strength to
wield in melee.";ss<<"\xA";msg+=ss.str();
+ double it_weighs=inventory[item_info].weight;
+ if(it_weighs>1.0){
+ it_weighs=(int)it_weighs;
+ }
+ ss.clear();ss.str("");ss<<"It
weighs ";ss<<it_weighs;ss<<".";ss<<"\xA";msg+=ss.str();
+ int strength_req=(int)(inventory[item_info].weight*0.25);
+ if(strength_req<1){
+ strength_req=1;
+ }
+ ss.clear();ss.str("");ss<<"It requires ";ss<<strength_req;ss<<"
strength to wield in melee.";ss<<"\xA";msg+=ss.str();
ss.clear();ss.str("");ss<<"It can
do ";ss<<inventory[item_info].damage_min_melee;ss<<"-";ss<<inventory[item_info].damage_max_melee;ss<<"
melee damage.";ss<<"\xA";msg+=ss.str();
ss.clear();ss.str("");ss<<"It can
do ";ss<<inventory[item_info].damage_min_thrown;ss<<"-";ss<<inventory[item_info].damage_max_thrown;ss<<"
thrown damage.";ss<<"\xA";msg+=ss.str();
if(inventory[item_info].damage_max_ranged!=0){
@@ -1391,10 +1399,10 @@
ss.clear();ss.str("");ss<<"Level: ";ss<<experience_level;msg=ss.str();

font_small.show(50,95+font.spacing_y+font_small.spacing_y*8,msg,font_color);

- ss.clear();ss.str("");ss<<"Maximum health at time of
death: ";ss<<return_health_max();msg=ss.str();
+ ss.clear();ss.str("");ss<<"Health at time of
death: ";ss<<return_health();ss<<"/";ss<<return_health_max();msg=ss.str();

font_small.show(50,95+font.spacing_y+font_small.spacing_y*9,msg,font_color);

- /**ss.clear();ss.str("");ss<<"Maximum mana at time of
death: ";ss<<return_mana_max();msg=ss.str();
+ /**ss.clear();ss.str("");ss<<"Mana at time of
death: ";ss<<return_mana();ss<<"/";ss<<return_mana_max();msg=ss.str();

font_small.show(50,95+font.spacing_y+font_small.spacing_y*10,msg,font_color);*/

ss.clear();ss.str("");ss<<"Final score: ";ss<<score;msg=ss.str();
=======================================
--- /templates.cpp Wed Apr 20 10:59:15 2011
+++ /templates.cpp Thu Apr 21 04:05:54 2011
@@ -58,7 +58,7 @@

//If the item is armor and no defense was set.
if(item->category==ITEM_ARMOR && item->defense==-1){
- item->defense=(temp_item_size*toughness[item->material])/8.0;
+ item->defense=(temp_item_size*toughness[item->material])/4.0;
//The armor piece should at least have 1 defense.
if(item->defense<=0){
item->defense=1;
@@ -75,7 +75,7 @@
//If the item is not a melee weapon.
else{
item->damage_min_melee=1;
- item->damage_max_melee=(temp_item_size*(item->weight/2.0))/8.0;
+ item->damage_max_melee=(temp_item_size*(item->weight/2.0))/4.0;
}

if(item->damage_min_melee<1){
@@ -136,15 +136,9 @@

item->color=string_to_color(material_to_string(item->material));

- /**if(item->material==MATERIAL_IRON){
- item->prefix_article="an";
- }*/
-

replace_first(item->name,"MATERIAL",material_to_string(item->material));


replace_first(item->plural_name,"MATERIAL",material_to_string(item->material));
-
-
calculate_item_attributes(item,template_items[item_category][item_template_index].size);
}

double Templates::determine_item_size(Item* item,int item_category,int
item_template_index){
@@ -174,13 +168,13 @@
}
//Large
else if(random_size==3){
- size*=1.25;
+ size*=1.5;
replace_first(item->name,"SIZE","large");
replace_first(item->plural_name,"SIZE","large");
}
//Huge
else if(random_size==4){
- size*=1.5;
+ size*=2.0;
replace_first(item->name,"SIZE","huge");
replace_first(item->plural_name,"SIZE","huge");
}
@@ -499,8 +493,6 @@

//If the line ends the base stats.
else if(icontains(line,"</base stats>")){
- ///Ensure the base stats are legitimate.
-
//Apply these base stats to the base_stats object.
base_stats=temp_race;

@@ -1013,8 +1005,6 @@

//If the line ends the race.
else if(icontains(line,"</race>")){
- ///Ensure the race is legitimate.
-
//Add this race to its templates vector.
template_races.push_back(temp_race);

@@ -1408,12 +1398,10 @@

//If the line ends the item.
else if(icontains(line,"</item>")){
- //If the item is a standard item with a predefined material.
- if(temp_item.allowed_materials.size()==0){
+ //If the item is a standard item with a predefined size and
material.
+ if(!temp_item.random_size &&
temp_item.allowed_materials.size()==0){
calculate_item_attributes(&temp_item,temp_item.size);
}
-
- ///Ensure the item is legitimate.

//Add this item to its templates vector.
template_items[category].push_back(temp_item);
=======================================
--- /version.h Thu Apr 21 00:29:03 2011
+++ /version.h Thu Apr 21 04:05:54 2011
@@ -16,17 +16,17 @@
//Standard Version Type
static const long MAJOR = 0;
static const long MINOR = 4;
- static const long BUILD = 3075;
- static const long REVISION = 17061;
+ static const long BUILD = 3083;
+ static const long REVISION = 17085;

//Miscellaneous Version Types
- static const long BUILDS_COUNT = 7232;
- #define RC_FILEVERSION 0,4,3075,17061
- #define RC_FILEVERSION_STRING "0, 4, 3075, 17061\0"
- static const char FULLVERSION_STRING[] = "0.4.3075.17061";
+ static const long BUILDS_COUNT = 7250;
+ #define RC_FILEVERSION 0,4,3083,17085
+ #define RC_FILEVERSION_STRING "0, 4, 3083, 17085\0"
+ static const char FULLVERSION_STRING[] = "0.4.3083.17085";

//These values are to keep track of your versioning state, don't modify
them.
- static const long BUILD_HISTORY = 15;
+ static const long BUILD_HISTORY = 23;


}

Reply all
Reply to author
Forward
0 new messages