A minimal open source mtg-like tcg game made in python that can be played on a terminal emulator using a keyboard.

Overview

TCG-TERM

Project state:

๐Ÿ”ง ๐Ÿšง ๐Ÿšง ๐Ÿšง Incomplete, In development ๐Ÿšง ๐Ÿšง ๐Ÿšง ๐Ÿ‘ท

(Keep in mind that at the moment, This project is currently undone, and will not work, if you try to lunch it.)

Latest prototype of this project are in the TEST directory which like the name imply is for testing and development purposes.

Once the TEST directory has a working prototype, i will start to refine it, by making more generalise function that have more flexibility, i will separate most of the code in their own function & modual.

So far the summoning with color cost and non color is a bigger challange then expected to get working, I am doing my best but so far their is still much to fix. for example being able to use any colors of lands to pay for colorless cost...

All of this could probably be acheaved with javascript on an html webpage, but i whanted to play on the terminal, so if you wish to adapt the code for a more web based experience feel free to contribute to this project.

I will probably Reuse some code and thechnics from this previus project of mine. It was a verry similar project, and i learn a lot from making it, even do I try to keep this project simple, i do not whish to rush it, and i do not have that much free time to work on it, so things can take some time to take shape.

RAND-CARD

What is tcg-term?

It started as a project to make an mtg alternative game on the linux terminal, but i now aim to include other style of tcg game play mode while avoiding to enfringe on the copy rightable content.

It is a minimalistic, open-source, tcg-like game, made in python, that can be played on most terminal emulator on linux. The first goal to be realistic in scope, is to have a playable single player game, with simple generated card, that have simple Keyword ability effect. Then once completed, add complexity progressivelly, and maybe in the far long distant future a form of multiplayer.

I aim to have multiple main gamemode "inspired" by:

  • M4g!c
  • P0k3m0n
  • Yu-g!-0h
  • F0rc3 0f w!ll
  • V4n9u4rd3

Imagine a single game in which you can play all of the above mention game mode and havem ultiple deck of each of those mode, having all these cards option in the game shop!

And maybe a gamemode called Battle-Cry ( Another one of my open source project Here on Github. ) Battle-cry should begine development after this project is functional, so it might take a while. I will use what i learn making this project to make it as best as i can.

mtg_wiki P0K3M0n

Concept art

I am still not sure what is the best way to display the mana cost. C: Creatures, P: Permanents, L: Lands. D: Deck, H: Hand, G: Graveyard.

Game View

Turn: [Player_name_one]
Phase: [Beginning/Untap Step] 

โ–ถ๏ธ [Player_name_one]: Health[20]

D: โฌœ[60]
G: ๐Ÿ’€[0]
H: ๐Ÿ”ณ๐Ÿ”ณ๐Ÿ”ณ๐Ÿ”ณ๐Ÿ”ณ๐Ÿ”ณ๐Ÿ”ณ[7] 

L: ๐ŸŸช โฌ›โฌ›
P: ๐ŸŸง
C: ๐ŸŸซ ๐ŸŸซ[2] โฌ›
  ๐Ÿ—ก๏ธ
    ๐Ÿ›ก๏ธ๐Ÿ›ก๏ธ        
C: ๐ŸŸซ๐ŸŸซ๐ŸŸซ
P: ๐ŸŸง๐ŸŸง
L: ๐ŸŸช๐ŸŸช โฌ›

H: ๐ŸŸง๐ŸŸซ๐ŸŸช๐ŸŸซ๐Ÿ”๐ŸŸง[6]
G: ๐Ÿ’€[6]
D: โฌœ[60]

[Player_name_two]: Health[20] 

-[Info]----------------------
Name: [Lorem Ipsum]
Cost: ๐Ÿšซ[2] ๐Ÿ”ต๐Ÿ”ต๐Ÿ”ต 
Type: Creature
Rarity: Mythic rare ๐ŸŒŸ
Effect: [ ... ]
Power: ๐Ÿ—ก๏ธ[1]
Taughness: ๐Ÿ›ก๏ธ[1]

Text-only

Turn: [Player_name_one]
Phase: [Beginning/Untap Step] 

> [Player_name_one]: Health[20] Deck[60]

Hand:  #######[7] 
Graveyard: [0]

L: # %%
P: #
C: # #[2] %
  A
   BB        
C: ###
P: ##
L: ## %

Graveyard: [6]
Hand:  ####@#[6]

[Player_name_two]: Health[20] Deck[60]

-[Info]----------------------
Name: [Lorem Ipsum]
Cost: None[2] Blue[3] 
Type: Creature
Rarity: Mythic rare *
Effect: [ ... ]
Power: 1
Taughness: 1

Deck Edit View

Filter: Name[๐Ÿ…ฐ] Cost[๐Ÿช™] Power[๐Ÿ—ก๏ธ] Taughness[๐Ÿ›ก๏ธ] Color[๐Ÿšซ]
[Deck]
๐ŸŸซ๐ŸŸซ๐ŸŸซ๐ŸŸซ๐ŸŸซ๐ŸŸซ๐ŸŸซ๐ŸŸซ๐ŸŸซ๐ŸŸซ
๐ŸŸซ๐ŸŸซ๐ŸŸซ๐ŸŸซ๐Ÿ”๐ŸŸซ๐ŸŸซ๐ŸŸซ๐ŸŸซ๐ŸŸซ
๐ŸŸซ๐ŸŸซ๐ŸŸซ๐ŸŸซ๐ŸŸง๐ŸŸง๐ŸŸง๐ŸŸง๐ŸŸง๐ŸŸง
๐ŸŸง๐ŸŸง๐ŸŸง๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช
๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช
๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช

[Sideboard]
๐ŸŸซ๐ŸŸซ๐ŸŸซ๐ŸŸซ๐ŸŸซ๐ŸŸซ๐ŸŸซ๐ŸŸซ๐ŸŸซ๐ŸŸซ
๐ŸŸซ๐ŸŸซ๐ŸŸซ๐ŸŸซ๐ŸŸซ๐ŸŸซ๐ŸŸซ๐ŸŸซ๐ŸŸซ๐ŸŸซ
๐ŸŸซ๐ŸŸซ๐ŸŸซ๐ŸŸซ๐ŸŸง๐ŸŸง๐ŸŸง๐ŸŸง๐ŸŸง๐ŸŸง
๐ŸŸง๐ŸŸง๐ŸŸง๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช
๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช
๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช๐ŸŸช

-[Info]----------------------
Name: [Lorem Ipsum]
Cost: ๐Ÿšซ๐Ÿšซ[2] ๐Ÿ”ต๐Ÿ”ต๐Ÿ”ต[3]
Type: Creature
Rarity: Mythic rare ๐ŸŒŸ
Effect: [ ... ]
Power: 1
taughness: 1
Copy: 3/4

โŒ[REMOVE] ๐Ÿ‘ฅ[Duplicate][Cost: 1000๐Ÿช™]
-----------------------------

๐Ÿšช[MAIN MENU]
[Player_name_one] 
Graveyard: ๐ŸŸง๐ŸŸซ๐ŸŸช๐ŸŸซ๐Ÿ”๐ŸŸง[6]
Field: โš”๏ธ

-[Info]----------------------
Name: [Lorem Ipsum]
Cost: ๐Ÿšซ[2] ๐Ÿ”ต[3]
Type: [Creature]
Effect: [ ... ]
P/T: [1/1]

Card Shop View

Don't worry you buy the cards with in game point, which can be won by winning game. No ingame purchasses XD

[Cards: 15x]:
  ๐Ÿ“ฆ[๐Ÿšซ][Cost: 150๐Ÿช™]
  ๐Ÿ“ฆ[โšช][Cost: 250๐Ÿช™]
๐Ÿ” ๐Ÿ“ฆ[๐Ÿ”ต][Cost: 250๐Ÿช™]
  ๐Ÿ“ฆ[โšซ][Cost: 250๐Ÿช™]
  ๐Ÿ“ฆ[๐Ÿ”ด][Cost: 250๐Ÿช™]
  ๐Ÿ“ฆ[๐ŸŸข][Cost: 250๐Ÿช™]
 
  ๐Ÿšช[MAIN MENU]

Settings View4

Settings:
 ๐Ÿ” Text Only [Off]
 โš™๏ธ Sound Effect [Off]
 โš™๏ธ Text Color [On]
 
 ๐Ÿšช[MAIN MENU]
 

Symbols emoji and therm used

Symbols:
Tapped โฌ›
Creature ๐ŸŸซ
Instant or Sorcery Or Artefact Or Enchantment ๐ŸŸง
Cursor/Slection ๐Ÿ” (Alternative cursor idea ๐Ÿ‘‡๐Ÿ‘†๐Ÿ‘‰๐Ÿคš๐Ÿ’  )
Colorless +
Attacking ๐Ÿ—ก๏ธ
Blocking ๐Ÿ›ก๏ธ
Colorless ๐Ÿšซ
Mana card ๐ŸŸช
Back ๐Ÿ”ณ
Mytic Rare ๐ŸŒŸ
Rare โญ
Uncomun ๐Ÿฅ‡

I also found these character emoji: ๐Ÿง™๐Ÿง™โ€โ™€๏ธ๐Ÿง™โ€โ™‚๏ธ๐Ÿง๐Ÿงโ€โ™€๏ธ๐Ÿงโ€โ™‚๏ธ๐Ÿง›๐Ÿง›โ€โ™€๏ธ๐Ÿง›โ€โ™‚๏ธ๐ŸงŸ๐ŸงŸโ€โ™€๏ธ๐ŸงŸโ€โ™‚๏ธ



Therm: P&T = Power and Taughness

Game default key bindings ๐Ÿ–ฑ๏ธ โŒจ๏ธ


## An option to customise or swap these default key bindings should be profided in the form of a config file or settings page, eventually.

# Controlle options
w = want selection (select what is selected by the cursor)
a = action (attacking/blocking/activating a spell)
s = skip (will skip to the next phase)
d = end turn (will skip all remaining phases)

# Move cursor
h = left
j = down
k = up
l = right

Help Needed!

I really want to play an tcg-like alternative game on linux, so please do your best to contribute if you can!

Read the task-list to see the priority. This project only accept clear, organized and well commented code. You can also submit suggestion and idea, as long as they are unambiguous and well developed.

WE NEED YOU

You feedback is welcome.

Owner
Amos
...
Amos
๐Ÿฆ Cheat for cs:go written in Python.

Cs::Fuck ๐Ÿฆ Cheat for cs:go written in Python. You can show a video here: https://vimeo.com/642730650 Feature. TriggerBot Glow Esp NoFlash Setup. 0. p

ัดฮนcะฝั‡ 10 Sep 23, 2022
AXI Combat is a networked multiplayer game built on the AXI Visualizer 3D engine.

AXI_Combat AXI Combat is a networked multiplayer game built on the AXI Visualizer 3D engine. https://axi.x10.mx/Combat AXI Combat is released under th

. 0 Aug 02, 2022
Simple darts game using Tkinter and sqlite3. Also associated with Python.

Ever wanted to play a simple and fun game before, and it even keeps a database of your score? Well here it is!! Introducing; Darts! A simple and fun g

an aspirin 2 Dec 19, 2021
Creates a landscape with more accurate river generation in Minecraft version 1.12 using python.

MinecraftLandRiverGen View the following youtube video to set up a world that can interact with the python programs

23 Dec 25, 2022
A basic quiz game using Python

QuizGame A basic quiz game using Python Passwords for quizzes (NO CAPS LOCK!): -ryzermattishandsome -canisleepwithyou Before using this, please make s

Austin 1 Nov 12, 2021
Aftermath is an anti token grabber written in Python3.

๐ŸŽˆ Aftermath ๐ŸŽˆ Aftermath is an anti token grabber written in Python3. This tool with a GUI setup is checking the Downloads folder to search for token

Billy 39 Dec 16, 2022
Logo hitting the corner == best feeling ever!

Bouncing DVD logo - Pygame A little ride back to the 90s. Ah good ol' time! Didn't we all wait for the logo to hit the corners? Best feeling ever!! I

Hoang Nguyen 3 May 25, 2022
Dragon Quest IV (NDS) English + Party Chat Script Patcher for Japan ROM

Patches English script files from the US version of Dragon Quest IV for Nintendo DS and Android so they are rendered nicely when used with the Japan ROM. Addresses various issues caused by the Japan

Aric Huang 35 Dec 18, 2022
Exposรจ for i3 WM. Fork of https://gitlab.com/d.reis/i3expo to fix crashes and improve features/usability

Overwiew Expo is an simple and straightforward way to get a visual impression of all your current virtual desktops that many compositing window manage

137 Nov 03, 2022
linorobot2 is a ROS2 port of the linorobot package

linorobot2 is a ROS2 port of the linorobot package. If you're planning to build your own custom ROS2 robot (2WD, 4WD, Mecanum Drive) using accessible parts, then this package is for you. This reposit

linorobot 195 Dec 29, 2022
3 Oct 22, 2021
python script to convert .OBJ files into Minecraft, rendering them in game with a core shader.

samples: random notes about the tool general output format: (animation not supported yet but planned) vertex id Minecraft's gl_VertexID isn't per mode

199 Jan 02, 2023
This is a classic guess coin game (Heads or Tails) implemented by the Chialisp.

This is a classic guess coin game (Heads or Tails) implemented by the Chialisp. It is an absolutely fair P2P game based on the Chia blockchain. You can play with anyone in the world without custody.

Kronus91 14 Jul 02, 2022
Termordle - a terminal based wordle clone in python

Termordle - a terminal based wordle clone in python

2 Feb 08, 2022
A Gomoku game GUI using pygame where the user can choose to play against another player or an AI using minimax with alpha-beta pruning

Gomoku A GUI based Gomoku game using pygame where the user can choose to play against another player or an AI using minimax with alpha-beta pruning. R

Mingyu Liu 1 Oct 30, 2021
๐Ÿชจ ๐Ÿ“„ โœ‚ game in python with recursion

๐Ÿชจ ๐Ÿ“„ โœ‚ Game Rock Paper Scissor game in python with recursion โš™๏ธ Developer's Guide Things you need to get started with this code:- Download python3 fr

Atul Anand 3 Jul 25, 2022
Useful guides, tutorials, and FAQs related to LEGO Universe and Darkflame Universe.

Awesome Lego Universe A curated list of awesome things related to LEGO Universe. LEGO Universe was a kid-friendly massively-multiplayer online role pl

Eric Myllyoja 33 Dec 12, 2022
Blackjack Game made using Python

Blackjack Game made using Python Blackjack is a popular card game played in most of the casino.This is an intuition to replicate the same card game us

SUHASJAGADISH 1 Nov 28, 2021
Cocos2d-x is a suite of open-source, cross-platform, game-development tools used by millions of developers all over the world.

cocos2d-x Win32 Others cocos2d-x is a multi-platform framework for building 2d games, interactive books, demos and other graphical applications. It is

cocos2d 16.7k Jan 04, 2023
Super Mario Kart November 1991 Prototype Repair by MrL314

Super Mario Kart November 1991 Prototype Repair by MrL314

MrL314 51 Dec 26, 2022