Skip to content

Commit

Permalink
First commit of Clonepoint source.
Browse files Browse the repository at this point in the history
  • Loading branch information
rohit-n committed Jan 16, 2015
1 parent 2000e25 commit b82e7fb
Show file tree
Hide file tree
Showing 97 changed files with 31,749 additions and 0 deletions.
171 changes: 171 additions & 0 deletions Modding.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,171 @@
Clonepoint loads maps from .tmx files generated by the Tiled Editor. You
can obtain the editor here.

http://www.mapeditor.org/

Notes on making maps for Clonepoint:

- If you want to test your maps quickly, compile Clonepoint with the
-DDEBUG flag to allow you to teleport to the mouse's position with
the middle mouse button.

- Clonepoint considers all files in the data/ directory with the .tmx
extension as potential maps to load.

- It is highly recommended that you copy one of the existing maps and
use them as a template to quickly make new ones. template.tmx contains
all entities you need to copy into other maps as well.

- Don't make a map called template.tmx - Clonepoint discards this as
a potential map to load.

- Clonepoint only loads entities and collision volumes if they are in
the correct Object Group.

- There are no "collision" tiles, but collision volumes. To use them,
create rectangles in the "Collision" object group.

* To make glass volumes, make a collision volume with the type field as
"Glass". Glass volumes can be of any dimension, but the standard I use
is 4 pixels (or 0.25 units) for width or height.

* To make invisible volumes that only block enemies (used to keep them
from leaving a building and patrolling the end of the map), create a
collision volume with the type field as "GuardBlock".

- To add other entities with graphics, you can use Tile's "Insert Tile (T)"
feature to add a graphical representation of them in the editor. This is
for your convenience. Clonepoint's level loading function doesn't care
about what graphics you choose, but rather what "type" the object is in
the editor. If an entity you added in the editor is not appearing in the
game, make sure you wrote in the type for the entity and put it in the
right object group.

- To add guards, circuit boxes, and stairs, add them in the "Entity" object
group.

* Guards have type "Guard". Enforcers have type "Enforcer". Professionals
have type "Professional".

* By default, created enemies face left. To make them face right, add a
custom property called "direction" with the value "right".

* By default, created enemies stand still. To make them patrol, add a
custom property called "patrolling" with the value "yes".

- To add stairs, add entities with the type "Stairs" in the "Entity"
object group.

* To create stairwells, just create stairs with the same x position.

- To create circuit boxes that unlock a particlar circuit in the map, create
an entity in the "Entity" object group with the following names in the type
property.

* CircuitBoxG - Green
* CircuitBoxV - Violet
* CircuitBoxY - Yellow
* CircuitBoxB - Blue

- To create a spawn point for the player, add an entity with the type "Player"
in the "Player" object group. Creating multiple spawn points will cause the
player to be spawned in the last point.

- To add props in the map that serve no gameplay purpose, create them in the
"Props" object group. There are a few names you can write in the type property
to get a valid prop.

* Watercooler
* Shelf
* Trashcan
* Couch
* Plant1
* Plant2
* LightPanel

- To create objectives in the map, add entities with the type "Terminal" in the
"Objectives" object group.

* If no Terminals are found, the player can simply go to the exit to complete
the map.

- To create the subway entrance where the player can exit the map, create an entity
with the type "Subway" in the "Objectives" object group.

* Creating multiple subways will simply spawn one subway in the last location added.

* If no subways are found, the player may exit the map by going to the right
boundary of the map.

- To create linkable objects, create entities in the following object groups

* RedLinkable - for objects in the Red circuit.
* BlueLinkable - for objects in the Blue circuit.
* VioletLinkable - for objects in the Violet circuit.
* YellowLinkable - for objects in the Yellow circuit.
* GreenLinkable - for objects in the Green circuit.

- The following linkable objects may be added by writing in the correct name
in the "type" property and adding them in the previous object groups.

* Alarm
* SoundDetector
* TrapDoor
* Elevator
+ To create elevator shafts, just create Elevators with the same x position.
* Switch
+ To create handscanners, create a switch with a custom property "handscanner" as
"yes".
* VaultDoor
* Socket
* Scanner
* Door
+ By default, Doors spawn closed. To make them spawn opened, create a custom property
"open" with the value "yes".
* SecurityCamera
+ By default, SecurityCameras spawn facing left. To make them spawn facing right, create
a custom property "direction" with the value "right".
* LightFixture

- To make LightFixtures control other lights, perform the following actions.

* Create a entity with the "type" property "Light" in the "Lights" object group.

* Create a "polyline" (press L) object that goes from a LightFixture to the Light
in the "LightLinks" object group. Remember to right click after the link is made to
disable polyline creation.

- To make lights that are not controlled by a LightFixture, simply create a light in the
"Lights" object group without a LightFixture linking to it.

* By default, Lights emit light from all angles. To limit the number of angles, create
the custom property "numangles" with the value in degrees.

- To make linkable objects link to others when the map starts, perform the following action.

* Create a "polyline" (press L) object that goes from a linkable object to another in
the "Links" object group.

* Only objects in the same circuit will actually be linked when the map starts.

* To make a tilemap of graphics in the map, select the "Tile Layer 1" layer.

* The data encoding for the tile layer MUST be in CSV format.

* The "firstgid" property of this tileset MUST be 1. Multiple tilesets for a map
are not supported.

* There are other map properties you can set in the "Map Properties" area. They are:

* startingupgrades - The number of upgrades you want the player to start with when
upgrading jump power and time to charge jump.

* startingenergy - The starting energy the player has to perform certain actions.
Currently, the only energy-spending action available is linking between enemy guns.
If not set, starting energy is zero.

* startingammo - The starting ammo the player has for their weapon. If not set, starting
ammo is zero.

* timetosniper - The number of seconds the player has after firing their weapon before
the police sniper arrives. If not set, time to sniper is 1 second.
124 changes: 124 additions & 0 deletions VeraMono.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,124 @@
Bitstream Vera Fonts Copyright

The fonts have a generous copyright, allowing derivative works (as
long as "Bitstream" or "Vera" are not in the names), and full
redistribution (so long as they are not *sold* by themselves). They
can be be bundled, redistributed and sold with any software.

The fonts are distributed under the following copyright:

Copyright
=========

Copyright (c) 2003 by Bitstream, Inc. All Rights Reserved. Bitstream
Vera is a trademark of Bitstream, Inc.

Permission is hereby granted, free of charge, to any person obtaining
a copy of the fonts accompanying this license ("Fonts") and associated
documentation files (the "Font Software"), to reproduce and distribute
the Font Software, including without limitation the rights to use,
copy, merge, publish, distribute, and/or sell copies of the Font
Software, and to permit persons to whom the Font Software is furnished
to do so, subject to the following conditions:

The above copyright and trademark notices and this permission notice
shall be included in all copies of one or more of the Font Software
typefaces.

The Font Software may be modified, altered, or added to, and in
particular the designs of glyphs or characters in the Fonts may be
modified and additional glyphs or characters may be added to the
Fonts, only if the fonts are renamed to names not containing either
the words "Bitstream" or the word "Vera".

This License becomes null and void to the extent applicable to Fonts
or Font Software that has been modified and is distributed under the
"Bitstream Vera" names.

The Font Software may be sold as part of a larger software package but
no copy of one or more of the Font Software typefaces may be sold by
itself.

THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL
BITSTREAM OR THE GNOME FOUNDATION BE LIABLE FOR ANY CLAIM, DAMAGES OR
OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL,
OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR
OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT
SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE.

Except as contained in this notice, the names of Gnome, the Gnome
Foundation, and Bitstream Inc., shall not be used in advertising or
otherwise to promote the sale, use or other dealings in this Font
Software without prior written authorization from the Gnome Foundation
or Bitstream Inc., respectively. For further information, contact:
fonts at gnome dot org.

Copyright FAQ
=============

1. I don't understand the resale restriction... What gives?

Bitstream is giving away these fonts, but wishes to ensure its
competitors can't just drop the fonts as is into a font sale system
and sell them as is. It seems fair that if Bitstream can't make money
from the Bitstream Vera fonts, their competitors should not be able to
do so either. You can sell the fonts as part of any software package,
however.

2. I want to package these fonts separately for distribution and
sale as part of a larger software package or system. Can I do so?

Yes. A RPM or Debian package is a "larger software package" to begin
with, and you aren't selling them independently by themselves.
See 1. above.

3. Are derivative works allowed?
Yes!

4. Can I change or add to the font(s)?
Yes, but you must change the name(s) of the font(s).

5. Under what terms are derivative works allowed?

You must change the name(s) of the fonts. This is to ensure the
quality of the fonts, both to protect Bitstream and Gnome. We want to
ensure that if an application has opened a font specifically of these
names, it gets what it expects (though of course, using fontconfig,
substitutions could still could have occurred during font
opening). You must include the Bitstream copyright. Additional
copyrights can be added, as per copyright law. Happy Font Hacking!

6. If I have improvements for Bitstream Vera, is it possible they might get
adopted in future versions?

Yes. The contract between the Gnome Foundation and Bitstream has
provisions for working with Bitstream to ensure quality additions to
the Bitstream Vera font family. Please contact us if you have such
additions. Note, that in general, we will want such additions for the
entire family, not just a single font, and that you'll have to keep
both Gnome and Jim Lyles, Vera's designer, happy! To make sense to add
glyphs to the font, they must be stylistically in keeping with Vera's
design. Vera cannot become a "ransom note" font. Jim Lyles will be
providing a document describing the design elements used in Vera, as a
guide and aid for people interested in contributing to Vera.

7. I want to sell a software package that uses these fonts: Can I do so?

Sure. Bundle the fonts with your software and sell your software
with the fonts. That is the intent of the copyright.

8. If applications have built the names "Bitstream Vera" into them,
can I override this somehow to use fonts of my choosing?

This depends on exact details of the software. Most open source
systems and software (e.g., Gnome, KDE, etc.) are now converting to
use fontconfig (see www.fontconfig.org) to handle font configuration,
selection and substitution; it has provisions for overriding font
names and subsituting alternatives. An example is provided by the
supplied local.conf file, which chooses the family Bitstream Vera for
"sans", "serif" and "monospace". Other software (e.g., the XFree86
core server) has other mechanisms for font substitution.

Loading

0 comments on commit b82e7fb

Please sign in to comment.