mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-06-01 18:42:57 +02:00
* killed, renamed to fpcgames.txt
This commit is contained in:
parent
6aa1947066
commit
b3353cdf96
@ -1,160 +0,0 @@
|
||||
The FPC games docs...
|
||||
|
||||
The FPC-games are a series of small console games written by Marco van de Voort
|
||||
(Marcov@stack.nl) as demos for the Free Pascal compiler (FPC) and its Run Time
|
||||
Libraries (RTL).
|
||||
|
||||
SameGame can also use the API for mousecontrol. This because the RTL mouseunit
|
||||
MsMouse only exists under Go32V2. The API mouse routines work with Linux, but
|
||||
have (right now) a problem with GPM version 1.17. Use a different version if you
|
||||
can 1.15 works according to the developpers.
|
||||
|
||||
Currently the games are
|
||||
|
||||
- FPCTris (v0.07)
|
||||
- Samegame (v0.02)
|
||||
|
||||
|
||||
Copyright
|
||||
---------
|
||||
|
||||
The source code is donated to the FPC project. The FPC project distributes all
|
||||
sources under a modified GNU license (much like the so called LGPL) see
|
||||
copying.fpc.
|
||||
|
||||
|
||||
Future
|
||||
--------
|
||||
|
||||
- Some cards games (BlackJack, Poker, and two Dutch games called "Rikken" and
|
||||
"Toepen") are in preparation
|
||||
- A server for Linux, so that Linux clients can connect to it for multiplayer
|
||||
services. One server for all games, otherwise small games like this clog up
|
||||
the number of free ports ;-)
|
||||
This is also important because most of the cardsgames (except BlackJack)
|
||||
can't be played against the computer, the AI is to difficult. (Poker is maybe
|
||||
also possible)
|
||||
|
||||
---------
|
||||
FPCTRIS
|
||||
|
||||
Fpctris is a tetris class game, originally designed
|
||||
|
||||
- to be distributed with FPC as Crt demo,
|
||||
- Keeping possible integration in the IDE in mind (would add 15k or so)
|
||||
- Svgalib version etc etc. Anyway, the engine is quite platform independant,
|
||||
and can be ported to different platforms (also TUI,GUI) if needed.
|
||||
|
||||
The current versions are still under development, but already playable even
|
||||
under telnet.
|
||||
|
||||
TODO list:
|
||||
|
||||
- (difficult, also interesting for Crt and IDE), get more terminals supported under
|
||||
Linux. Specially I don't want to issue the escape sequence that rapes your console
|
||||
to an IBM compat charset. Linux users don't like that. (temporarily solved by
|
||||
doing this only on user request)
|
||||
|
||||
- (Linux) Sockets multiplayer client system :-). Have actually started on it,
|
||||
but are getting nowhere. The server will be separate and support more than
|
||||
one game. So you get one port for several games.
|
||||
|
||||
- Setup screen ((create) alternate blocks etc)
|
||||
|
||||
- Commandline options/config file. (.rctetris per user :-))
|
||||
|
||||
KNOWN BUGS:
|
||||
|
||||
- Upperrow not used with some chars. (Requires shifting up). Possibly related
|
||||
that very rarely game over appears when there's still one or two rows to go.
|
||||
(Since the 5x5 version some of this has been removed. If you get a L-shaped
|
||||
character and immediately rotate, the upper line is used)
|
||||
- Biggest problem at the moment is the delay procedure and its init on machines
|
||||
under heavy load. Can't change that though. Only under heavy load, so a
|
||||
less big problem on heavy machines.
|
||||
- Selection of colors don't take screen attribs into account. So figures can
|
||||
seem to disappear on weird TTY's or 4Dos people using strange ANSI prompts.
|
||||
|
||||
History:
|
||||
|
||||
v0.00 First version with working gameplay, created during the Brussels meeting.
|
||||
published on tflily.
|
||||
v0.01 Some work done, first version on my page. Most improvements done in
|
||||
Brussels, to many to name here.
|
||||
v0.02 - Got rid of binary encoding, and calculating shapes etc when a new figure
|
||||
is created. All is done on startup now. Adding characters is simpler now.
|
||||
- A lot of parameters are variables instead of constants.
|
||||
- Experienced tetrissers press "e" once.
|
||||
- Colors! Linux has the color default off (press "C")
|
||||
v0.03 (Only used on on stack, not on web)
|
||||
- Keep on pushing arrow down no longer freezes FPCTris.
|
||||
- Basic level system implemented.
|
||||
- High ascii background in color mode.
|
||||
v0.04 (Only used on on stack, not on web)
|
||||
- The push-down arrow fix removed the possibility to move the character
|
||||
after arrow-down, which I liked much. Fixed. # of possible moves after
|
||||
arrow-down also adjustable.
|
||||
- Tried compiling with W32 compiler. RTE 216 (which is gpf I believe)
|
||||
Is Crt unit. Hello World "Use crt" also gpf's.
|
||||
- Removed the first, forgotten bugfix for the hickup problem. Now the
|
||||
"feel" of the game is ok. When you push down, it goes down, but you
|
||||
have the change to do one more move.
|
||||
v0.05 (Never used anywere, backup version before movement to 5x5 figures)
|
||||
- More Score info
|
||||
- Help possiblity
|
||||
- Highscores. (also saved to file, and searched in the path)
|
||||
- Entering highscores uses inputstr. Size boosts to 1200 lines. Yuck.
|
||||
- Most functionality now implemented.
|
||||
v0.06 (To Peter)
|
||||
- 5x5 figures including "The Cross". Worked almost rightaway, but figures
|
||||
rotate a bit weird.
|
||||
- Better rotation 5x5 system. Only smallest square around figure is
|
||||
rotated.
|
||||
- Better scores. Incl quadratic (progressive is a better word) scores for
|
||||
multiple lines. Now it does matter if you remove 2 x 1 line or 2
|
||||
lines at once.
|
||||
- Some small other fixes.
|
||||
- 'q' is also exit.
|
||||
|
||||
v0.07 - Highscore table routines moved to gameunit. Gameunit.pp now required.
|
||||
|
||||
----------
|
||||
SameGame.
|
||||
|
||||
Principle copied from KDE/GNOME.
|
||||
|
||||
The principle: The playfield is a grid consisting out of 3 colors.
|
||||
You can mark a certain spot on the playfield, and all adjacent grid-cubes
|
||||
(horizontally or vertically) will also get marked by the computer.
|
||||
When you press the left button, and two or more cubes are marked, the marked
|
||||
cubes will disappear, and the playfield will colapse to the bottom left.
|
||||
This can be repeated until there are no more agregates. If the field is empty
|
||||
then, you receive a bonus.
|
||||
|
||||
The trick is that the score for each disappearing aggregate of cubes is more
|
||||
than linear (0.25* quadratic right now) dependant on the number of cubes it
|
||||
contains.
|
||||
|
||||
This means that removing 5 times an aggregate of 2 cubes will result in a far
|
||||
smaller score than one aggregate of 10 cubes. ( 5*2^2 < 10^2)
|
||||
|
||||
TODO:
|
||||
|
||||
[none]
|
||||
|
||||
BUGS:
|
||||
|
||||
- Maybe better algoritm for initial filling of playfield.
|
||||
- Runtime sizable playfield.
|
||||
|
||||
HISTORY:
|
||||
|
||||
v0.01 :
|
||||
- Initial version.
|
||||
- Slightly improved initial algoritm.
|
||||
|
||||
v0.02 - Using gameunit. GPM support via API, but whole thing GPF's under Linux,
|
||||
but works under Go32V2.
|
||||
- Highscores,helpscreen, all small things that come with a decent finishing
|
||||
of the concept
|
||||
|
Loading…
Reference in New Issue
Block a user