Difference between revisions of "The ASCII Project"

From RogueBasin
Jump to navigation Jump to search
 
(17 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{game-alpha| name = The ASCII Project
{{game-defunct| name = The ASCII Project
|developer = [[User:Yamamushi|Yamamushi]]
|developer = [[User:Yamamushi|Yamamushi]]
|influences = [[Dwarf Fortress]] [http://minecraft.net Minecraft] [http://www.nobleape.com Noble Ape]
|influences = [[Dwarf Fortress]] [http://minecraft.net Minecraft] [http://www.nobleape.com Noble Ape]
|theme = Fantasy, Modern, and Futuristic
|theme = Fantasy, Modern, and Futuristic
|released = 2012
|released = 2012
|updated = 2012 Aug 05
|updated = 2012 Nov 23 (v.0.0.1e)
|language = [[C++]], [[C]], Custom Built
|language = [[C++]], [[C]], Custom Built
|platforms = [[Linux]], [[Mac OS]], [[Windows]]
|platforms = Binaries available for [[Linux]] and [[Mac OS]], [[Windows]] In Development
|licensing = GPLv3
|licensing = GPLv3
|features = Multiplayer
|features = Multiplayer
Line 18: Line 18:
The overall goal is to accomplish this through collaborative building, as well as city/state management involving not only real-world players but NPC's driven by an advanced AI engine. Taking in many design goals and features of The [http://www.nobleape.com Noble Ape] Project, the NPC's will not only be able to be scripted, but will allow for the self-modification of underlying behaviors so that in a sense they continue to "evolve" on their own for as long as they survive in the game world. See [http://www.gp-field-guide.org.uk/ Genetic Programming]
The overall goal is to accomplish this through collaborative building, as well as city/state management involving not only real-world players but NPC's driven by an advanced AI engine. Taking in many design goals and features of The [http://www.nobleape.com Noble Ape] Project, the NPC's will not only be able to be scripted, but will allow for the self-modification of underlying behaviors so that in a sense they continue to "evolve" on their own for as long as they survive in the game world. See [http://www.gp-field-guide.org.uk/ Genetic Programming]


When restricting world resources and relying on a [[Permadeath]] based system, players will have to work together not only amongst each other, but also with the NPC's that inhabit the game world. Thus is the driving philosophical motivation behind the development of The ASCII Project, that players should not "own" the game world, but should "share" it with the other "sentient" entities that inhabit it.
When restricting world resources and relying on a [[Permadeath]] based system, players will have to work together not only amongst each other, but also with the NPC's that inhabit the game world. Thus is the driving philosophical motivation behind the development of The ASCII Project, that players should not "own" the game world, but should "share" it with the other entities that inhabit it.


== Current Release ==
== Current Release ==


The current latest stable release is [https://github.com/yamamushi/theasciiproject/tree/f3199559f6ee88302bdfe65c6071f8d616684810 0.0.0j Rev 4], however no binaries are available and one will have to compile the source on their own to test out the game as it stands now.
The current latest stable release is [https://yamamushi.github.io/theasciiproject/ 0.0.1e]. We ask that if you intend on testing this release, that you please visit our IRC for guidance on the rather unique control scheme.
 


=== Current Features ===
=== Current Features ===
Line 30: Line 29:
* Asynchronous network protocol
* Asynchronous network protocol
* Linefeed mode for the Server
* Linefeed mode for the Server
* Full [[Unicode]] Font Implementation
* [[Unicode]] graphics - The ASCII Project is a graphic-less game, aside from the text-based interface. It's graphics are represented by Unicode characters however, thus allowing for around 65k unique characters. Potentially, when taking into account the HSV coloring scheme used by the [http://doryen.eptalys.net/libtcod/ libtcod engine], the maximum unique characters is well over a trillion.
* Randomized Map Creation
* Randomized Map Creation
* An open API (ongoing) - The entire project is 100% GPLv3 licensed, allowing for custom clients to be built using (almost) any language.
* Fully documented code - Making it easier for new developers to add features they want.
* PostgreSQL Database integration - Allowing for account creation and custom character creation, as well as a secure token passing system for API interaction.
* Proper Client Input - A realtime method of communicating with the server console via a "command-line"-like interface.
* Binary Savefiles – Player entity data is serialized (via Boost::Serialization) and stored as a binary (.dat) file within data/ents under the current run time directory of the server.
* Unique Characters – Each player is now represented on the map by their own character instead of sharing one character tile across all connections (which was previously used that way for testing purposes).
* Server Console Interface – The client now has the ability to send text commands directly to the server, which are preceded by the “/” character.
* Mouse Support – The Client now has an improved streamlined interface, so as to allow the mouse to be used to navigate through menus.


== Upcoming Release ==
== Upcoming Release ==


=== Planned for 8/12/2012 ===


* MySQL Database integration - Allowing for account creation and custom character creation
=== Planned for 8/26/2012 - 8/30/2012 ===
 
* Chat - Allowing for players to communicate with each other in the game world.
* Chat - Allowing for players to communicate with each other in the game world.
* World Interaction - Allowing players to destroy and place tiles on the map
* Starting the "3d" (multi z-level) environment.


=== Planned for 8/12/2012 - 8/26/2012 ===
=== Ongoing Development ===


* World Interaction - Allowing players to destroy and place tiles on the map
* Bug Fixes
* Updates to Server - A more robust command/API list.
* Updates to Server - A more robust command/API list.
* Starting the "3d" (multi z-level) environment.




Line 51: Line 58:


* An extremely advanced real-time physics engine (ie, from Windmills to Nuclear Power)
* An extremely advanced real-time physics engine (ie, from Windmills to Nuclear Power)
* A custom build scripting language for creating NPC types with specific Behaviors and Abilities (functions).
* A custom built scripting language for creating NPC types with specific Behaviors and Abilities (functions).
* A real-time game world, wherein players are restricted only by their stamina/health/etc rather than an arbitrary turn-by-turn movement clock.
* A real-time game world, wherein players are restricted only by their stamina/health/etc rather than an arbitrary turn-by-turn movement clock.
* Collaborative building, from a simple house to villages and possibly cities (assuming one survives that long).
* Collaborative building, from a simple house to villages and possibly cities (assuming one survives that long).
Line 57: Line 64:
* Real-time trading mechanics, i.e. a village will have to run or a hire a caravan to move their goods to neighboring markets. Thus, a caravan will have to be protected or else risk losing their goods to bandits or players that "pirate".
* Real-time trading mechanics, i.e. a village will have to run or a hire a caravan to move their goods to neighboring markets. Thus, a caravan will have to be protected or else risk losing their goods to bandits or players that "pirate".
* A wide variety of "vehicles": small ships to galleons and beyond, wagons to trucks, horses/etc.
* A wide variety of "vehicles": small ships to galleons and beyond, wagons to trucks, horses/etc.
* An open API (the entire project is 100% GPLv3 licensed), allowing for custom clients to be built using (almost) any language.
* Real-time [[Dungeon_persistence|persistent]] game engine. The game will continue to operate, and the NPC's will continue to go about their daily lives even when no players are logged in. If a goblin comes and raids a players town while they're logged off, when they come back in their farmers might be dead and because of [[Permadeath]] they won't respawn. Their families will react accordingly, and perhaps the lowered food production will affect everyone in the village. The player could, however, track down the goblins and retrieve the items that were stolen - because of full persistence.
* Fully documented code, making it easier for new developers to add features they want.
* Real-time persistent game engine. The game will continue to operate, and the NPC's will continue to go about their daily lives even when no players are logged in. If a goblin comes and raids a players town while they're logged off, when they come back in their farmers might be dead and because of [[Permadeath]] they won't respawn. Their families will react accordingly, and perhaps the lowered food production will affect everyone in the village. The player could, however, track down the goblins and retrieve the items that were stolen - because of full persistence.
* Large World - With limited world resources. This will likely be user-configurable on a per-server basis, but the total resources in a given world will be limited by the size of that respective world.
* Large World - With limited world resources. This will likely be user-configurable on a per-server basis, but the total resources in a given world will be limited by the size of that respective world.
* Full Crafting System - Everything that an NPC can sell, a player can also choose to build on their own - provided they have the appropriate skills. However there may still be some rare yet-discovered item types that only exist once in the world. i.e. your super-powerful rare sword you discovered at the bottom of a dungeon is literally one-of-a-kind.
* Full Crafting System - Everything that an NPC can sell, a player can also choose to build on their own - provided they have the appropriate skills. However there may still be some rare yet-discovered item types that only exist once in the world. i.e. your super-powerful rare sword you discovered at the bottom of a dungeon is literally one-of-a-kind.
* [[Unicode]] graphics - The ASCII Project is a graphic-less game, aside from the text-based interface. It's graphics are represented by Unicode characters however, thus allowing for around 65k unique characters. Potentially, when taking into account the HSV coloring scheme used by the [http://doryen.eptalys.net/libtcod/ libtcod engine], the maximum unique characters is well over a trillion.
* Please see the [htttp://www.theasciiproject.com/wk/ project wiki] for more information.


* Please see the [http://www.theasciiproject.com/wk/ project wiki] for more information.


==External links==
==External links==
Line 72: Line 74:
* [http://www.theasciiproject.com/ Homepage]
* [http://www.theasciiproject.com/ Homepage]
* [http://www.theasciiproject.com/screenshots/ Screenshots]
* [http://www.theasciiproject.com/screenshots/ Screenshots]
* Public server at "pub.theasciiproject.com" (Using Client Release 0.0.0j Rev 4)
* Public server at "pub.TheAsciiProject.com" (Using Client Release 0.0.0m - Any Colour You Like)


[[Category:Roguelike games]]
[[Category:Roguelike games]]

Latest revision as of 00:59, 21 January 2017

The ASCII Project
Defunct Game
Developer Yamamushi
Theme Fantasy, Modern, and Futuristic
Influences Dwarf Fortress Minecraft Noble Ape
Released 2012 ({{{relver}}})
Updated 2012 Nov 23 (v.0.0.1e) ({{{updver}}})
Licensing GPLv3
P. Language C++, C, Custom Built
Platforms Binaries available for Linux and Mac OS, Windows In Development
Interface Unicode, Keyboard
Game Length Unlimited - Until Player Death
Official site of The ASCII Project

The ASCII Project is an attempt to bring sandbox multiplayer gaming into a roguelike world.

The overall goal is to accomplish this through collaborative building, as well as city/state management involving not only real-world players but NPC's driven by an advanced AI engine. Taking in many design goals and features of The Noble Ape Project, the NPC's will not only be able to be scripted, but will allow for the self-modification of underlying behaviors so that in a sense they continue to "evolve" on their own for as long as they survive in the game world. See Genetic Programming

When restricting world resources and relying on a Permadeath based system, players will have to work together not only amongst each other, but also with the NPC's that inhabit the game world. Thus is the driving philosophical motivation behind the development of The ASCII Project, that players should not "own" the game world, but should "share" it with the other entities that inhabit it.

Current Release

The current latest stable release is 0.0.1e. We ask that if you intend on testing this release, that you please visit our IRC for guidance on the rather unique control scheme.

Current Features

  • Both a multi-platform client and server
  • Asynchronous network protocol
  • Linefeed mode for the Server
  • Unicode graphics - The ASCII Project is a graphic-less game, aside from the text-based interface. It's graphics are represented by Unicode characters however, thus allowing for around 65k unique characters. Potentially, when taking into account the HSV coloring scheme used by the libtcod engine, the maximum unique characters is well over a trillion.
  • Randomized Map Creation
  • An open API (ongoing) - The entire project is 100% GPLv3 licensed, allowing for custom clients to be built using (almost) any language.
  • Fully documented code - Making it easier for new developers to add features they want.
  • PostgreSQL Database integration - Allowing for account creation and custom character creation, as well as a secure token passing system for API interaction.
  • Proper Client Input - A realtime method of communicating with the server console via a "command-line"-like interface.
  • Binary Savefiles – Player entity data is serialized (via Boost::Serialization) and stored as a binary (.dat) file within data/ents under the current run time directory of the server.
  • Unique Characters – Each player is now represented on the map by their own character instead of sharing one character tile across all connections (which was previously used that way for testing purposes).
  • Server Console Interface – The client now has the ability to send text commands directly to the server, which are preceded by the “/” character.
  • Mouse Support – The Client now has an improved streamlined interface, so as to allow the mouse to be used to navigate through menus.

Upcoming Release

Planned for 8/26/2012 - 8/30/2012

  • Chat - Allowing for players to communicate with each other in the game world.
  • World Interaction - Allowing players to destroy and place tiles on the map
  • Starting the "3d" (multi z-level) environment.

Ongoing Development

  • Bug Fixes
  • Updates to Server - A more robust command/API list.


Planned Features

  • An extremely advanced real-time physics engine (ie, from Windmills to Nuclear Power)
  • A custom built scripting language for creating NPC types with specific Behaviors and Abilities (functions).
  • A real-time game world, wherein players are restricted only by their stamina/health/etc rather than an arbitrary turn-by-turn movement clock.
  • Collaborative building, from a simple house to villages and possibly cities (assuming one survives that long).
  • In-game politics, both with warring player nations and NPC nations, with diplomatic consequences.
  • Real-time trading mechanics, i.e. a village will have to run or a hire a caravan to move their goods to neighboring markets. Thus, a caravan will have to be protected or else risk losing their goods to bandits or players that "pirate".
  • A wide variety of "vehicles": small ships to galleons and beyond, wagons to trucks, horses/etc.
  • Real-time persistent game engine. The game will continue to operate, and the NPC's will continue to go about their daily lives even when no players are logged in. If a goblin comes and raids a players town while they're logged off, when they come back in their farmers might be dead and because of Permadeath they won't respawn. Their families will react accordingly, and perhaps the lowered food production will affect everyone in the village. The player could, however, track down the goblins and retrieve the items that were stolen - because of full persistence.
  • Large World - With limited world resources. This will likely be user-configurable on a per-server basis, but the total resources in a given world will be limited by the size of that respective world.
  • Full Crafting System - Everything that an NPC can sell, a player can also choose to build on their own - provided they have the appropriate skills. However there may still be some rare yet-discovered item types that only exist once in the world. i.e. your super-powerful rare sword you discovered at the bottom of a dungeon is literally one-of-a-kind.

External links

  • Homepage
  • Screenshots
  • Public server at "pub.TheAsciiProject.com" (Using Client Release 0.0.0m - Any Colour You Like)