Update
This commit is contained in:
parent
1ab3672b68
commit
1ef7c6e9ea
11 changed files with 109 additions and 63 deletions
|
@ -47,9 +47,12 @@ We can work with the binary representation the same way as with decimal, i.e. we
|
||||||
- **[one's complement](ones_complement.md)**: Allows storing integers, both positive, negative and zero. The leftmost bit signifies a sign, in the same way as with sign-magnitude, but numbers are inverted differently: a positive number is turned into negative (and vice versa) by inverting all bits. So e.g. 0011 is 3 while 1100 is -3 (again, bit width matters). The disadvantage is there are two values for zero (positive, 0000 and [negative](negative_zero.md), 1111) which wastes a value and presents a computational inconvenience, and some operations with these numbers may be more complex.
|
- **[one's complement](ones_complement.md)**: Allows storing integers, both positive, negative and zero. The leftmost bit signifies a sign, in the same way as with sign-magnitude, but numbers are inverted differently: a positive number is turned into negative (and vice versa) by inverting all bits. So e.g. 0011 is 3 while 1100 is -3 (again, bit width matters). The disadvantage is there are two values for zero (positive, 0000 and [negative](negative_zero.md), 1111) which wastes a value and presents a computational inconvenience, and some operations with these numbers may be more complex.
|
||||||
- **[fixed point](fixed_point.md)**: Allows storing [rational numbers](rational_number.md) (fractions), i.e. numbers with a radix point (such as 1101.011), which can also be positive, negative or zero. It works by imagining a radix point at some fixed position in the binary representation, e.g. if we have an 8 bit number, we may consider 5 leftmost bits to represent the whole part and 3 rightmost bits to be the fractional part (so e.g the number 11010110 represents 11010.110). The advantage here is extreme simplicity (we can use normal integer numbers as fixed point simply by imagining a radix point). The disadvantage may be low precision and small range of representable values.
|
- **[fixed point](fixed_point.md)**: Allows storing [rational numbers](rational_number.md) (fractions), i.e. numbers with a radix point (such as 1101.011), which can also be positive, negative or zero. It works by imagining a radix point at some fixed position in the binary representation, e.g. if we have an 8 bit number, we may consider 5 leftmost bits to represent the whole part and 3 rightmost bits to be the fractional part (so e.g the number 11010110 represents 11010.110). The advantage here is extreme simplicity (we can use normal integer numbers as fixed point simply by imagining a radix point). The disadvantage may be low precision and small range of representable values.
|
||||||
- **[floating point](float.md)**: Allows storing [rational numbers](rational_number.md) in great ranges, both positive, negative and zero, plus some additional values such as [infinity](infinity.md) and *[not a number](nan.md)*. It allows the radix point to be shifted which gives a potential for storing extremely big and extremely small numbers at the same time. The disadvantage is that float is extremely complex, [bloated](bloat.md), wastes some values and for fast execution requires a special hardware unit (which most "normal" computers nowadays have, but are missing e.g. in some [embedded systems](embedded.md)).
|
- **[floating point](float.md)**: Allows storing [rational numbers](rational_number.md) in great ranges, both positive, negative and zero, plus some additional values such as [infinity](infinity.md) and *[not a number](nan.md)*. It allows the radix point to be shifted which gives a potential for storing extremely big and extremely small numbers at the same time. The disadvantage is that float is extremely complex, [bloated](bloat.md), wastes some values and for fast execution requires a special hardware unit (which most "normal" computers nowadays have, but are missing e.g. in some [embedded systems](embedded.md)).
|
||||||
|
- ...
|
||||||
|
|
||||||
As anything can be represented with numbers, binary can be used to store any kind of information such as text, images, sounds and videos. See [data structures](data_structure.md) and [file formats](file_format.md).
|
As anything can be represented with numbers, binary can be used to store any kind of information such as text, images, sounds and videos. See [data structures](data_structure.md) and [file formats](file_format.md).
|
||||||
|
|
||||||
|
**Binary numbers can nicely encode [sets](set.md)**: one binary number can be seen as representing a set, with each bit saying whether an object is or is not present. For example an 8 bit number can represent a set of whole numbers 0 to 7. Consider e.g. a value *S1 = 10000101* and *S2 = 01001110*; *S1* represents a set { 0, 2, 7 }, *S2* represents a set { 1, 2, 3, 6 }. This is natural and convenient, no bits are wasted on encoding order of numbers, only their presence or absence is encoded, and many set operations are trivial and very fast. For example the basic operations on sets, i.e. union, intersection, complement are simply performed with boolean operators [OR](or.md), [AND](and.md) and [NOT](not.md). Also checking membership, adding or removing numbers to the set etc. are very simple (left as an exercise for the reader lol; also another exercise -- in a similar fashion, how would you encode a [multiset](multiset.md)?). This is actually very useful and commonly used, for example [chess](chess.md) engines often use 64 bit numbers to represent sets of squares on a chessboard.
|
||||||
|
|
||||||
## See Also
|
## See Also
|
||||||
|
|
||||||
- [unary](unary.md)
|
- [unary](unary.md)
|
||||||
|
|
|
@ -4,7 +4,7 @@ Brain [software](software.md), also brainware, is kind of a [fun](fun.md) idea o
|
||||||
|
|
||||||
Primitive tools helping the brain compute, such as pen and paper or printed out mathematical tables, may be allowed.
|
Primitive tools helping the brain compute, such as pen and paper or printed out mathematical tables, may be allowed.
|
||||||
|
|
||||||
Example of brain software can be the [game](game.html) of [chess](chess.md). Chess masters can easily play the game without a physical chess board, only in their head, and they can play games with each other by just saying the moves out loud. They may even just play games with themselves, which makes chess a deep, entertaining game that can be 100% contained in one's brain. Such game can never be taken away from the person, it can't be altered by corporations, it can't become unplayable on new [hardware](hardware.md) etc., making it free to the greatest extent.
|
Example of brain software can be the [game](game.html) of [chess](chess.md). Chess masters can easily play the game without a physical chess board, only in their head, and they can play games with each other by just saying the moves out loud. They may even just play games with themselves, which makes chess a deep, entertaining game that can be 100% contained in one's brain. Such game can never be taken away from the person, it can't be altered by corporations, it can't become unplayable on new [hardware](hardware.md) etc., making it free to the greatest extent. Many other board games and pen and pencil games, such as [racetrack](racetrack.md) (pen and pencil racing game suitable for one or many players).
|
||||||
|
|
||||||
One may think of a pen and paper computer with its own simple instruction set that allows general purpose programming. This instruction set may be designed to be well interpretable by human and it may be accompanied by tables printed out on paper for quick lookup of operation results -- e.g. a 4 bit computer might provide a 16x16 table with precomputed multiplication results which would help the person execute the multiplication instruction within mere seconds.
|
One may think of a pen and paper computer with its own simple instruction set that allows general purpose programming. This instruction set may be designed to be well interpretable by human and it may be accompanied by tables printed out on paper for quick lookup of operation results -- e.g. a 4 bit computer might provide a 16x16 table with precomputed multiplication results which would help the person execute the multiplication instruction within mere seconds.
|
||||||
|
|
||||||
|
|
2
chess.md
2
chess.md
|
@ -112,7 +112,7 @@ What is the **longest possible game**? It depends on the exact rules and details
|
||||||
|
|
||||||
The **longest game played in practice** is considered to be the one between Nikolic and Arsovic from 1989, a draw with 269 moves lasting over 20 hours. For a shortest game there have been ones with zero moves; serious decisive shortest game has occurred multiple times like this: `1.d4 Nf6 2.Bg5 c6 3.e3 Qa5+` (white resigned).
|
The **longest game played in practice** is considered to be the one between Nikolic and Arsovic from 1989, a draw with 269 moves lasting over 20 hours. For a shortest game there have been ones with zero moves; serious decisive shortest game has occurred multiple times like this: `1.d4 Nf6 2.Bg5 c6 3.e3 Qa5+` (white resigned).
|
||||||
|
|
||||||
**Best player ever**: a 2017 paper called *Who is the Master?* analyzed 20 of the top players of history based on how good their moves were compared to Stockfish, the strongest engine. The resulting top 10 is (from best): Carlsen, Kramnik, Fischer, Kasparov, Anand, Khalifman, Smyslov, Petrosian, Karpov, Kasimdzhanov. It also confirmed that the quality of chess play at top level has been greatly increasing.
|
**Best players ever**: a 2017 paper called *Who is the Master?* analyzed 20 of the top players of history based on how good their moves were compared to Stockfish, the strongest engine. The resulting **top 10** was (from best): Carlsen (born 1990 Norway, peak Elo 2882), Kramnik (born 1975 Russia, peak Elo 2817), Fischer (born 1943 USA, peak Elo 2785), Kasparov (born 1963 Russia, peak Elo 2851), Anand (born 1969 India, peak Elo 2817), Khalifman, Smyslov, Petrosian, Karpov, Kasimdzhanov. It also confirmed that the quality of chess play at top level has been greatly increasing. The **best [woman](woman.md) player** in history is considered is considered to be Judit Polgar (born 1976 Hungary, peak Elo 2735), which still only managed to reach some 49th place in the world; by Elo she is followed by Hou Yifan (born 1994 China, peak Elo 2686) and Koneru Humpy (born 1987 India, peak Elo 2623). **Strongest players of black [race](race.md)** (NOT including brown, e.g. India): lol there don't seem to be many black players in chess :D The first black GM only appeared in 1999 (!!!) -- Maurice Ashley (born 1966 Jamaica, peak rating 2504) who is also probably the most famous black chess player, though more because of his commentator skills; Pontus Carlsson (peak Elo 2531) may be strongest.
|
||||||
|
|
||||||
What's **the most typical game**? We can try to construct such a game from a game database by always picking the most common move in given position. Using the lichess database at the time of writing, we get the following incomplete game (the remainder of the game is split between four games, 2 won by white, 1 by black, 1 drawn):
|
What's **the most typical game**? We can try to construct such a game from a game database by always picking the most common move in given position. Using the lichess database at the time of writing, we get the following incomplete game (the remainder of the game is split between four games, 2 won by white, 1 by black, 1 drawn):
|
||||||
|
|
||||||
|
|
4
evil.md
4
evil.md
|
@ -1,3 +1,7 @@
|
||||||
# Evil
|
# Evil
|
||||||
|
|
||||||
*Evil always wins in the end.*
|
*Evil always wins in the end.*
|
||||||
|
|
||||||
|
TODO
|
||||||
|
|
||||||
|
As [Richard Stallman](rms.md) says, **all evil does some good, which is never a reason to support it**. Just as any good always does a little bit of evil, the opposite also holds: for example [Facebook](facebook.md), a [corporation](corporation.md) who accelerates and largely causes downfall of civilization and kills and tortures millions of people, may on occasion help do something good, for example help people communicate during an emergency, however it is no reason to support Facebook or to stop supporting its destruction.
|
112
game.md
112
game.md
|
@ -1,52 +1,20 @@
|
||||||
# Game
|
# Game
|
||||||
|
|
||||||
Most generally game is a form of play which is restricted by certain rules, the goal of which is mostly [fun](fun.md), challenge and/or [competition](competition.md). A game may have various combinations of mental elements (e.g. competitive mental calculations, ...) and physical elements (based in [real life](irl.md), e.g. [football](football.md), [marble racing](marble_racing.md), ...); nowadays very popular games are [computer](computer.md) games, or video games (also gaymes or vidya, e.g. [Anarch](anarch.md), [minesweeper](minesweeper.md), [Doom](doom.md), ...), which are played with the help of a computer. *Game* is also a [mathematical](math.md) term in [game theory](game_theory.md) which studies games and competition rigorously.
|
Most generally game is a form of play which is restricted by certain rules, the goal of which is typically [fun](fun.md), challenge and/or [competition](competition.md). A game may have various combinations of mathematical/mental elements (e.g. competitive mental calculations, mathematically defined rules, ...), physical elements (based in [real life](irl.md) physics, e.g. [football](football.md), [marble racing](marble_racing.md), ...) and even other types of elements (e.g. social, psychological, ...); nowadays very popular games are [computer](computer.md) games, or video games (also gaymes or vidya, e.g. [Anarch](anarch.md), [minesweeper](minesweeper.md), [Doom](doom.md), ...), which are played with the help of a computer. An entity (human, computer, animal, ...) playing a game is called a player and his ability to play it well is called [skill](skill.md). *Game* is also a [mathematical](math.md) term in [game theory](game_theory.md) which studies games and competition rigorously.
|
||||||
|
|
||||||
A fun take at the very concept of a game is [Nomic](nomic.md), a game in which changing the game rules is part of the game. It leads to all kinds of mindfucks.
|
A fun take at the very concept of a game is [Nomic](nomic.md), a game in which changing the game rules is part of the game. It leads to all kinds of mindfucks.
|
||||||
|
|
||||||
## Computer Games
|
|
||||||
|
|
||||||
Computer game is [software](software.md) whose main purpose is to be played and interactively entertain the [user](user.md). Sadly most computer games are [proprietary](proprietary.md) and [toxic](toxic.md).
|
|
||||||
|
|
||||||
Among [suckless](kiss.md) software proponents there is a disagreement about whether games are legit software or just a [meme](meme.md) and harmful kind of entertainment. The proponents of the latter argue something along the lines that technology is only for getting work done, that games are for losers, that they hurt MUH [PRODUCTIVITY](productivity_cult.md), are an unhealthy addiction, wasted time and effort etc. Those who like games see them as a legitimate form of relaxation, a form of [art](art.md) that's pleasant both to make and enjoy as a finished piece, and also a way to advancing technology along the way (note we are NOT talking about consumerist games here; any consumerist art is bad). Developing games has historically led to improvements of other kinds of software, mainly e.g. [3D rendering](3d_rendering.md), physics simulation and virtual reality. If games are done well, in a non-[capitalist](capitalism.md) way, then **we, [LRS](lrs.md), fully accept games as legitimate software**; of course as long as their purpose is to help all people, i.e. while we don't reject games as such, we reject most games the industry produces nowadays. We further argue that **in games it is acceptable to do what in real life is unethical** (even to characters controlled by other live players) and that this is in fact one of their greatest aspect as they allow to satisfy natural needs that were crucial in the jungle but became harmful in advanced society, such as those for [competition](competition.md), violence, [fascism](fascism.md), egoistic behavior and others -- provided the player can tell a difference between a game and real life of course. As such, games help us build a [better society](less_retarded_society.md) in which people can satisfy even harmful needs without doing harm; in a game it is acceptable to torture people, roleplay as a [capitalist](capitalism.md) or even verbally bully other players in chat (who joined the server willingly knowing this is just a simulation, a roleplay), even though these things would be unacceptable to do in real life.
|
|
||||||
|
|
||||||
Despite arguments about the usefulness of games, most people agree on one thing: that the mainstream AAA games produced by big [corporations](corporation.md) are [harmful](harmful.md), [bloated](bloat.md), [toxic](toxic.md), badly made and designed to be highly malicious, consumerist products. They are one of the worst cases of [capitalist software](capitalist_software.md). Such games are never going to be considered good from our perspective (and even the mainstream is turning towards classifying modern games as [shit](shit.md)).
|
|
||||||
|
|
||||||
PC games are mostly made for and played on [MS Windows](windows.md) which is still the "gaming OS", even though in recent years we've seen a boom of "[Linux](linux.md) gaming", possibly thanks to Windows getting shittier and shittier every year. Many normies nowadays are practicing "mobile" or console gayming which may be even worse. However, most games, even when played on [GNU](gnu.md)/Linux, are still [proprietary](proprietary.md), [capitalist](capitalist_software.md) and [bloated](bloat.md) as hell.
|
|
||||||
|
|
||||||
We might call this the **great tragedy of games**: the industry has become similar to the industry of **drug abuse**. Games feel great and can become very addictive, especially to people not aware of the dangers (children). Today not playing latest games makes you left out socially, out of the loop, a weirdo. Therefore contrary to the original purpose of a game -- that of making life better and bringing joy -- an individual "on games" from the capitalist industry will crave to constantly consume more and more "experiences" that get progressively more expensive to satisfy. This situation is purposefully engineered by the big game producers who exploit psychological and sociological phenomena to enslave *gamers* and make them addicted. Games become more and more predatory and abusive and of course, there are no moral limits for corporations of how far they can go: games with [microthefts](microtransaction.md) and lootboxes, for example, are similar to gambling, and are often targeted at very young children. The game industry cooperates with the hardware and software industry to together produce a consumerist hell in which one is required to constantly update his hardware and software and to keep spending money just to stay in. The gaming addiction is so strong that even the [FOSS](foss.md) people somehow create a **mental exception** for games and somehow do not mind e.g. [proprietary](proprietary.dm) games even though they otherwise reject proprietary software. Even most of the developers of free software games can't mentally separate themselves from the concepts set in place by capitalist games, they try to subconsciously mimic the toxic attributes of such games (bloat, unreasonably realistic graphics and hardware demands, content consumerism, [cheating](cheating.md) "protection", language filters, ...).
|
|
||||||
|
|
||||||
Therefore it is crucial to stress that **games are technology like any other**, they can be exploiting and abusive, and so indeed all the high standards we hold for other technology we must also hold for games. Too many people judge games solely by their gameplay. For us at [LRS](lrs.md) gameplay is but one attribute, and not even the one standing at the top; factors such as [software freedom](free_software.md), [cultural freedom](free_culture.md), [sucklessness](suckless.md), good internal design and being [future proof](future_proof.md) are even more important.
|
|
||||||
|
|
||||||
A small number of games nowadays come with a [free](free_software.md) engine, which is either official (often retroactively freed by its developer in case of older games) or developed by volunteers. Example of the former are the engines of ID games ([Doom](doom.md), [Quake](quake.md)), example of the latter can be [OpenMW](openmw.md) (a free engine for TES: Morrowind) or [Mangos](mangos.md) (a free server for [World of Warcraft](wow.md)). Console [emulators](emulator.md) (such as of Playstation or Gameboy) can also be considered a free engine for playing proprietary games.
|
|
||||||
|
|
||||||
Yet a smaller number of games are completely free (in the sense of [Debian](debian.md)'s free software definition), including both the engine and game assets. These games are called **free games** or **libre games** and many of them are clones of famous proprietary games. Examples of these probably (one can rarely ever be sure about legal status) include [SuperTuxKart](stk.md), [Minetest](minetest.md), [Xonotic](xonotic.md), [FLARE](flare.md) or [Anarch](anarch.md). There exists a wiki for libre games at https://libregamewiki.org and a developer forum at https://forum.freegamedev.net/. Libre games can also be found in Debian software repositories. However WATCH OUT, all mentioned repositories may be unreliable!
|
|
||||||
|
|
||||||
{ NOTE: Do not blindly trust libregamewiki and freegamedev forum, non-free games ocassionaly DO appear there by accident, negligence or even by intention. I've actually found that most of the big games like SuperTuxKart have some licensing issues (they removed one proprietary mascot from STK after my report). Ryzom has been removed after I brought up the fact that the whole server content is proprietary and secret. So if you're a purist, focus on the simpler games and confirm their freeness yourself. Anyway, LGW is a good place to start looking for libre games. It is much easier to be sure about freedom of suckless/LRS games, e.g. Anarch is legally safe practically with 100% certainty. ~drummyfish }
|
|
||||||
|
|
||||||
Some games are pretty based as they don't even require [GUI](gui.md) and are only played in the text shell (either using [TUI](tui.md) or purely textual I/O) -- these are called TTY games or command line games. This kind of games may be particularly interesting to [minimalists](minimalism.md), hobbyists and developers with low ([zero](zero.md)) budget, little spare time and/or no artistic skills. Roguelike games are especially popular here; there sometimes even exist GUI frontends which is pretty neat -- this demonstrates how the [Unix philosophy](unix_philosophy.md) can be applied to games.
|
|
||||||
|
|
||||||
Another kind of cool games are computer implementations of pre-computer games, for example [chess](chess.md), backgammon, go or various card games. Such games are very often well tested and fine-tuned gameplay-wise, popular with active communities and therefore [fun](fun.md), yet simple to program with many existing free implementations and good AIs (e.g. GNU chess, GNU go or [Stockfish](stockfish.md)).
|
|
||||||
|
|
||||||
### Games As LRS
|
|
||||||
|
|
||||||
Games can be [suckless](suckless.md) and just as any other software should try to adhere to the [Unix philosophy](unix_philosophy.md). A [LRS](lrs.md) game should follow all the principles that apply to any other kind of such software, for example being completely [public domain](public_domain.md) or aiming for high [portability](portability.md). This is important to mention because, sadly, many people see games as some kind of exception among software and think that different technological or moral rules apply -- this is wrong.
|
|
||||||
|
|
||||||
If you want to make a simple LRS game, there is an official LRS [C](c.md) library for this: [SAF](saf.md).
|
|
||||||
|
|
||||||
A LRS game will be similar to any other [suckless](suckless.md) program, one example of a design choice it should take is the following: while mainstream games are built around the idea of having a precompiled engine that runs [scripts](script.md) written in some interpreted language, a **LRS/suckless game wouldn't use run-time scripts** but would rather have such "scripts" written as a part of the whole game's source code (e.g. in a file `scripts.h`), in the same language as the engine (typically [C](c.md)) and they would be compiled into the binary program. This is the same principle by which suckless programs such as [dwm](dwm.md) don't use config files but rather have the configuration be part of the source code (in a file `config.h`). Doing this in a suckless program doesn't really have any disadvantages as such program is extremely easy and fast to recompile, and it brings in many advantages such as only using a single language, reducing complexity by not needing any interpreter, not having to open and read script files from the file system and also being faster.
|
|
||||||
|
|
||||||
Compared to mainstream games, a LRS game shouldn't be a consumerist product, it should be a tool to help people entertain themselves and relieve their stress. From the user perspective, the game should be focused on the fun and relaxation aspect rather than impressive visuals (i.e. photorealism etc.), i.e. it will likely utilize simple graphics and audio. Another aspect of an LRS game is that the technological part is just as important as how the game behaves on the outside (unlike mainstream games that have ugly, badly designed internals and mostly focus on rapid development and impressing the consumer with visuals).
|
|
||||||
|
|
||||||
The paradigm of LRS gamedev differs from the mainstream gamedev just as the [Unix philosophy](unix_philosophy.md) differs from the [Window philosophy](windows_philosophy.md). While a mainstream game is a monolithic piece of software, designed to allow at best some simple, controlled and limited user modifications, a LRS game is designed with [forking](fork.md), wild [hacking](hacking.md), unpredictable abuse and code reuse in mind.
|
|
||||||
|
|
||||||
Let's take an example. A LRS game of a real-time 3D [RPG](rpg.md) genre may for example consist of several independent modules: the RPG library, the game code, the content and the [frontend](frontend.md). Yes, a mainstream game will consist of similar modules, however those modules will probably only exist for the internal organization of work and better testing, they won't be intended for real reuse or wild hacking. With the LRS RPG game it is implicitly assumed that someone else may take the 3D game and make it into a purely non-real-time [command line](cli.md) game just by replacing the frontend, in which case the rest of the code shouldn't be burdened by anything 3D-rendering related. The paradigm here should be similar to that existing in the world of computer [chess](chess.md) where there exist separate engines, graphical frontends, communication protocols, formats, software for running engine tournaments, analyzing games etc. [Roguelikes](roguelike.md) and the world of [quake](quake.md) engines show some of this modularity, though not in such a degree we would like to see -- LRS game modules may be completely separate projects and different processes communicating via text interfaces through [pipes](pipe.md), just as basic Unix tools do. We have to think about someone possibly taking our singleplayer RPG and make it into an MMORPG. Someone may even take the game and use it as a research tool for [machine learning](machine_learning.md) or as a VFX tool for making movies, and the game should be designed so as to make this as easy as possible -- the user interface should be very simple to be replaced by an [API](api.md) for computers. The game should allow easy creation of [tool assisted speedruns](tas.md), to record demos, to allow [scripting](script.md) (i.e. manipulation by external programs, traditional in-game interpreted scripting may be absent, as mentioned previously), modifying ingame variables, even creating [cheats](cheat.md) etc. And, importantly, **the game content is a module as well**, i.e. the whole RPG world, its lore and storyline is something that can be modified, forked, remixed, and the game creator should bear this in mind (see also [free universe](free_universe.md)).
|
|
||||||
|
|
||||||
Of course, LRS games must NOT contain such shit as "[anti-cheating](anti_cheat.md) technology", [DRM](drm.md) etc. For our stance on cheating, see the article [about it](cheat.md).
|
|
||||||
|
|
||||||
### Types Of Games
|
### Types Of Games
|
||||||
|
|
||||||
Besides dividing games as any other software ([free](free_software.md) vs [proprietary](proprietary.md), [suckless](suckless.md) vs [bloat](bloat.md), ...) we may further divide them by the following:
|
It's quite hard to exactly define what a game is, it is a [fuzzy](fuzzy.md) concept, and it is also hard to categorize games. Let us now define a simple classification of games by their basic nature, which will hopefully be suitable for us here:
|
||||||
|
|
||||||
|
- **[mathematical](math.md) games**: Games taking place in an abstract mathematical space, with exactly defined rules. Though mathematical games may of course be represented in real life (e.g. by physical chess pieces made of wood), such a representation is only a helper for the player and doesn't rule the game out of this category.
|
||||||
|
- **[computer](computer.md) games**: Mathematical games that practically REQUIRE a computer (and usually have been design as such) to be played due to the computations involved being very numerous and/or complex -- for example [Doom](doom.md).
|
||||||
|
- **non-computer mathematical games**: Mathematical games that do not require a computer (though of course their computer implementations may exist) as the calculations involved can be practically performed without it -- for example [chess](chess.md).
|
||||||
|
- **[real life](irl.md) games**: Games taking place in real life, i.e. usually making use of real world physics or other laws (e.g. social ones) -- for example [football](football.md) or [marble racing](marble_racing.md).
|
||||||
|
- **hybrid games**: Various combinations of mathematical and real life games, e.g. [chess boxing](chess_boxing.md).
|
||||||
|
|
||||||
|
Furthermore many different ways of division and classifications are widely used -- for example computer games may be divided as any other software ([free](free_software.md) vs [proprietary](proprietary.md), [suckless](suckless.md) vs [bloat](bloat.md), ...), but also by many other aspect such as their genre, interface, platform etc. The following are common divisions we find usually among computer games, but often applicable to other typed of games also:
|
||||||
|
|
||||||
- by genre:
|
- by genre:
|
||||||
- [minigames](minigame.md)
|
- [minigames](minigame.md)
|
||||||
|
@ -74,7 +42,7 @@ Besides dividing games as any other software ([free](free_software.md) vs [propr
|
||||||
- by [information](information.md):
|
- by [information](information.md):
|
||||||
- [complete information](complete_information.md)
|
- [complete information](complete_information.md)
|
||||||
- [incomplete information](incomplete_information.md)
|
- [incomplete information](incomplete_information.md)
|
||||||
- by interface/graphics:
|
- by interface/graphics/world representation:
|
||||||
- [2D](2d.md)
|
- [2D](2d.md)
|
||||||
- [3D](3d.md)
|
- [3D](3d.md)
|
||||||
- ["pseudo3D"/primitive3D](pseudo3d.md)
|
- ["pseudo3D"/primitive3D](pseudo3d.md)
|
||||||
|
@ -104,7 +72,49 @@ Besides dividing games as any other software ([free](free_software.md) vs [propr
|
||||||
- ...
|
- ...
|
||||||
- ...
|
- ...
|
||||||
|
|
||||||
### Legal Matters
|
## Computer Games
|
||||||
|
|
||||||
|
Computer game is most commonly understood to be [software](software.md) whose main purpose is to be played and, in most cases interactively, entertain the [user](user.md); in a wider sense it may perhaps be anything we might call a game that happens to run on a computer (e.g. game theory games that serve research rather than entertainment etc.). Let us implicitly assume the former now. Sadly most such computer games are [proprietary](proprietary.md) and [toxic](toxic.md), as anything that's a subject of lucrative [business](business.md) under [capitalism](capitalism.md).
|
||||||
|
|
||||||
|
Among [suckless](kiss.md) software proponents there is a disagreement about whether games are legit software or just a [meme](meme.md) and harmful kind of entertainment. The proponents of the latter argue something along the lines that technology is there only to get real work done, that games are for losers, that they hurt MUH [PRODUCTIVITY](productivity_cult.md), are an unhealthy addiction, wasted time and effort etc. Those in support of games as legitimate software see them as a valid form of relaxation, a form of [art](art.md) that's pleasant both to make and enjoy as a finished piece, and also a way to advancing technology along the way (note we are NOT talking about consumerist games here; any consumerist art is bad). Developing games has historically led to improvements of other kinds of software, especially e.g. [3D rendering](3d_rendering.md), physics simulation and virtual reality. If games are done well, in a non-[capitalist](capitalism.md) way, then **we, [LRS](lrs.md), fully accept and support games as legitimate software**; of course as long as their purpose is to help all people, i.e. while we don't reject games as such, we reject most games the industry produces nowadays. We further argue that **in games it is acceptable to do what in real life is unethical** (even to characters controlled by other live players) and that this is in fact one of their greatest potential: to allow satisfying natural needs that were crucial in the jungle but became obsolete and harmful in advanced society, such as those for [competition](competition.md), violence, [fascism](fascism.md), [egoistic](egoism.md) behavior and others -- provided the player can tell the difference between a game and real life of course. As such, games help us build a [better society](less_retarded_society.md) in which people can satisfy even harmful needs without doing actual harm; in a game it is acceptable to torture people, roleplay as a [capitalist](capitalism.md) or even verbally bully other players in chat (who joined the server willingly knowing this is just a simulation, a roleplay), even though these things would be unacceptable to do in real life.
|
||||||
|
|
||||||
|
Despite arguments about the usefulness of games, most people agree on one thing: that the mainstream AAA games produced by big [corporations](corporation.md) (and nowadays basically just all commercial games, even the small ones, especially e.g. mobile games) are [harmful](harmful.md), [bloated](bloat.md), [toxic](toxic.md), badly made and designed to be highly malicious, consumerist products whose sole purpose is to rape the user. They are one of the worst cases of [capitalist software](capitalist_software.md) ([rapeware](rapeware.md)). Such games are never going to be considered anywhere near good from our perspective (and even the mainstream is turning towards classifying modern games as [shit](shit.md)), not even if they do some good.
|
||||||
|
|
||||||
|
PC games are mostly made for and played on [MS Windows](windows.md) which is still the "gaming OS", even though in recent years we've seen a boom of "[GNU](gnu.md)/[Linux](linux.md) gaming", possibly thanks to Windows getting shittier and shittier every year. While smallbrains see this as good, in fact it only leads to more windowization of GNU/Linux, i.e. games will just move to GNU/Linux, make it the new place of business and destroy it just as surely (indeed for example [Valve](valve.md) is already raping it, by 2023 "Linux" is already almost unusable as it became more mainstream and popular). Many normies nowadays are practicing "mobile" or console gayming which may be even worse, but really choosing between PC, consoles and phones is like choosing which kind of torture is best to endure before death. Sadly most games, even when played on [GNU](gnu.md)/Linux, are still [proprietary](proprietary.md), [capitalist](capitalist_software.md) and [bloated](bloat.md) as hell. So yeah, the world of mainstream and even mainstream indie games is one big swamp that's altogether best to be avoided.
|
||||||
|
|
||||||
|
{ If you are really so broken that you HAVE TO play proprietary games to live a meaningful life, the least harmful way for everyone is to [SOMEHOW GET YOUR HANDS ON](piracy.md) old DOS games, or at worst some pre 2005 Windowzee gaymes, and play them in [dosbox](dosbox.md)/[wine](wine.md) or engine recreations like [OpenMW](openmw.md) etc. Yeah it's dirty, proprietary, non-free shit, but at least you don't need a supercomputer, you won't be tortured by ads, robbed by microthefts or bullied into consuming Internet. It's best if you just use this method to slowly rid yourself of your gayming addiction to be finally free. ~drummyfish }
|
||||||
|
|
||||||
|
We might call this the **great tragedy of games**: the industry has become similar to the industry of **drug abuse**. Games feel great and can become very addictive, especially to people not aware of the dangers (children, retards, ...). Today not playing latest games makes you left out socially, out of the loop, a weirdo. Therefore contrary to the original purpose of a game -- that of making life better and bringing joy -- an individual "on games" from the capitalist industry will crave to constantly consume more and more "experiences" that get progressively more expensive to satisfy. This situation is purposefully engineered by the big game producers who exploit psychological and sociological phenomena to enslave *gamers* and make them addicted. Games become more and more predatory and abusive and of course, there are no moral limits for corporations of how far they can go: games with [microthefts](microtransaction.md) and lootboxes, for example, are similar to gambling, and are often targeted at very young children and people prone to gambling addictions. The game industry cooperates with the hardware and software industry to together produce a consumerist hell in which one is required to constantly [update](update_culture.md) his hardware and software and to keep spending money just to stay in. The gaming addiction is so strong that even the [FOSS](foss.md) people somehow create a **mental exception** for games and somehow do not mind e.g. [proprietary](proprietary.dm) games even though they otherwise reject proprietary software. Even most of the developers of free software games can't mentally separate themselves from the concepts set in place by capitalist games, they try to subconsciously mimic the toxic attributes of such games (bloat, unreasonably realistic graphics and hardware demands, content consumerism, [cheating](cheating.md) "protection", language filters and safe spaces, ...).
|
||||||
|
|
||||||
|
Therefore it is crucial to stress that **games are [technology](tech.md) like any other**, they can be exploiting and abusive, and so indeed all the high standards we hold for other technology we must also hold for games. Too many people judge games solely by their externals, i.e. gameplay, looks and general fun they have playing them. For us at [LRS](lrs.md) gameplay is but one attribute, and not even the one of greatest importance; factors such as [software freedom](free_software.md), [cultural freedom](free_culture.md), [sucklessness](suckless.md), good internal design and being [future proof](future_proof.md) are even more important.
|
||||||
|
|
||||||
|
A small number of games nowadays come with a [free](free_software.md) engine, which is either official (often retroactively freed by its developer in case of older games) or developed by volunteers. Example of the former are the engines of ID games ([Doom](doom.md), [Quake](quake.md)), example of the latter can be [OpenMW](openmw.md) (a free engine for TES: Morrowind) or [Mangos](mangos.md) (a free server for [World of Warcraft](wow.md)). Console [emulators](emulator.md) (such as of Playstation or Gameboy) can also be considered a free engine for playing proprietary games.
|
||||||
|
|
||||||
|
Yet a smaller number of games are completely free (in the sense of [Debian](debian.md)'s free software definition), including both the engine and game assets. These games are called **free games** or **libre games** and many of them are clones of famous proprietary games. Examples of these probably (one can rarely ever be sure about legal status) include [SuperTuxKart](stk.md), [Minetest](minetest.md), [Xonotic](xonotic.md), [FLARE](flare.md) or [Anarch](anarch.md). There exists a wiki for libre games at https://libregamewiki.org and a developer forum at https://forum.freegamedev.net/. Libre games can also be found in Debian software repositories. However WATCH OUT, all mentioned repositories may be unreliable!
|
||||||
|
|
||||||
|
{ NOTE: Do not blindly trust libregamewiki and freegamedev forum, non-free games ocassionaly DO appear there by accident, negligence or even by intention. I've actually found that most of the big games like SuperTuxKart have some licensing issues (they removed one proprietary mascot from STK after my report). Ryzom has been removed after I brought up the fact that the whole server content is proprietary and secret. So if you're a purist, focus on the simpler games and confirm their freeness yourself. Anyway, LGW is a good place to start looking for libre games. It is much easier to be sure about freedom of suckless/LRS games, e.g. Anarch is legally safe practically with 100% certainty. ~drummyfish }
|
||||||
|
|
||||||
|
Some games are pretty based as they don't even require [GUI](gui.md) and are only played in the text [shell](shell.md) (either using [TUI](tui.md) or purely textual I/O) -- these are called TTY games or command line games. This kind of games may be particularly interesting to [minimalists](minimalism.md), hobbyists and developers with low ([zero](zero.md)) budget, little spare time and/or no artistic skills. Roguelike games are especially popular here; there sometimes even exist GUI frontends which is pretty neat -- this demonstrates how the [Unix philosophy](unix_philosophy.md) can be applied to games.
|
||||||
|
|
||||||
|
Another kind of cool games are computer implementations of non-computer games, for example [chess](chess.md), [backgammon](backgammon.md), [go](go.md) or various card games. Such games are very often well tested and fine-tuned gameplay-wise, popular with active communities and therefore [fun](fun.md), yet simple to program with many existing free implementations and good AIs (e.g. GNU chess, GNU go or [Stockfish](stockfish.md)). What's more, they are also many times completely [public domain](public_domain.md)!
|
||||||
|
|
||||||
|
### Games As LRS
|
||||||
|
|
||||||
|
Computer games can be [suckless](suckless.md) and just as any other software should try to adhere to the [Unix philosophy](unix_philosophy.md). A [LRS](lrs.md) game should follow all the principles that apply to any other kind of such software, for example being completely [public domain](public_domain.md) or aiming for high [portability](portability.md) and getting [finished](finished.md). This is important to mention because, sadly, many people see games as some kind of exception among software and think that different technological or moral rules apply -- this is wrong.
|
||||||
|
|
||||||
|
If you want to make a simple LRS game, there is an official LRS [C](c.md) library for this: [SAF](saf.md).
|
||||||
|
|
||||||
|
A LRS game will be similar to any other [suckless](suckless.md) program, one example of a design choice it should take is the following: while mainstream games are built around the idea of having a precompiled engine that runs [scripts](script.md) written in some interpreted language, a **LRS/suckless game wouldn't use run-time scripts** but would rather have such "scripts" written as a part of the whole game's source code (e.g. in a file `scripts.h`), in the same language as the engine (typically [C](c.md)) and they would be compiled into the binary program. This is the same principle by which suckless programs such as [dwm](dwm.md) don't use config files but rather have the configuration be part of the source code (in a file `config.h`). Doing this in a suckless program doesn't really have any disadvantages as such program is extremely easy and fast to recompile, and it brings in many advantages such as only using a single language, reducing complexity by not needing any interpreter, not having to open and read script files from the file system and also being faster.
|
||||||
|
|
||||||
|
Compared to mainstream games, a LRS game shouldn't be a consumerist product, it should be a tool to help people entertain themselves and relieve their stress. From the user perspective, the game should be focused on the fun and relaxation aspect rather than impressive visuals (i.e. photorealism etc.), i.e. it will likely utilize simple graphics and audio. Another aspect of an LRS game is that the technological part is just as important as how the game behaves on the outside (unlike mainstream games that have ugly, badly designed internals and mostly focus on rapid development and impressing the consumer with visuals).
|
||||||
|
|
||||||
|
The paradigm of LRS gamedev differs from the mainstream gamedev just as the [Unix philosophy](unix_philosophy.md) differs from the [Window philosophy](windows_philosophy.md). While a mainstream game is a monolithic piece of software, designed to allow at best some simple, controlled and limited user modifications, a LRS game is designed with [forking](fork.md), wild [hacking](hacking.md), unpredictable abuse and code reuse in mind.
|
||||||
|
|
||||||
|
Let's take an example. A LRS game of a real-time 3D [RPG](rpg.md) genre may for example consist of several independent modules: the RPG library, the game code, the content and the [frontend](frontend.md). Yes, a mainstream game will consist of similar modules, however those modules will probably only exist for the internal organization of work and better testing, they won't be intended for real reuse or wild hacking. With the LRS RPG game it is implicitly assumed that someone else may take the 3D game and make it into a purely non-real-time [command line](cli.md) game just by replacing the frontend, in which case the rest of the code shouldn't be burdened by anything 3D-rendering related. The paradigm here should be similar to that existing in the world of computer [chess](chess.md) where there exist separate engines, graphical frontends, communication protocols, formats, software for running engine tournaments, analyzing games etc. [Roguelikes](roguelike.md) and the world of [quake](quake.md) engines show some of this modularity, though not in such a degree we would like to see -- LRS game modules may be completely separate projects and different processes communicating via text interfaces through [pipes](pipe.md), just as basic Unix tools do. We have to think about someone possibly taking our singleplayer RPG and make it into an MMORPG. Someone may even take the game and use it as a research tool for [machine learning](machine_learning.md) or as a VFX tool for making movies, and the game should be designed so as to make this as easy as possible -- the user interface should be very simple to be replaced by an [API](api.md) for computers. The game should allow easy creation of [tool assisted speedruns](tas.md), to record demos, to allow [scripting](script.md) (i.e. manipulation by external programs, traditional in-game interpreted scripting may be absent, as mentioned previously), modifying ingame variables, even creating [cheats](cheat.md) etc. And, importantly, **the game content is a module as well**, i.e. the whole RPG world, its lore and storyline is something that can be modified, forked, remixed, and the game creator should bear this in mind (see also [free universe](free_universe.md)).
|
||||||
|
|
||||||
|
Of course, LRS games must NOT contain such shit as "[anti-cheating](anti_cheat.md) technology", [DRM](drm.md) etc. For our stance on cheating, see the article [about it](cheat.md).
|
||||||
|
|
||||||
|
## Legal Matters
|
||||||
|
|
||||||
Thankfully gameplay mechanisms cannot (yet) be [copyrighted](copyright.md) (however some can sadly be [patented](patent.md)) so we can mostly happily [clone](clone.md) proprietary games and so free them. However this must be done carefully as there is a possibility of stepping on other mines, for example violating a [*trade dress*](trade_dress.md) (looking too similar visually) or a [trade mark](trade_mark.md) (for example you cannot use the word *tetris* as it's owned by some shitty company) and also said patents (for example the concept of minigames on loading screens used to be patented in the past).
|
Thankfully gameplay mechanisms cannot (yet) be [copyrighted](copyright.md) (however some can sadly be [patented](patent.md)) so we can mostly happily [clone](clone.md) proprietary games and so free them. However this must be done carefully as there is a possibility of stepping on other mines, for example violating a [*trade dress*](trade_dress.md) (looking too similar visually) or a [trade mark](trade_mark.md) (for example you cannot use the word *tetris* as it's owned by some shitty company) and also said patents (for example the concept of minigames on loading screens used to be patented in the past).
|
||||||
|
|
||||||
|
@ -112,23 +122,19 @@ Trademarks have been known to cause problems in the realm of libre games, for ex
|
||||||
|
|
||||||
**Advice on [cloning](clone.md) games**: copy only the gameplay mechanics, otherwise make it original and very different from the cloned game or else you're threading the fine legal lines. See this as an opportunity to add something new, something that's yours, and potentially to apply and exploit [minimalism](minimalism.md), i.e. if you're going to clone Doom, do not make a game about shooting demons from hell that's called Gnoom -- just take the gameplay and do something new, e.g. why not try to make it a mix of sci-fi and fantasy with procedurally generated levels which will additionally save you a lot of time on level design?
|
**Advice on [cloning](clone.md) games**: copy only the gameplay mechanics, otherwise make it original and very different from the cloned game or else you're threading the fine legal lines. See this as an opportunity to add something new, something that's yours, and potentially to apply and exploit [minimalism](minimalism.md), i.e. if you're going to clone Doom, do not make a game about shooting demons from hell that's called Gnoom -- just take the gameplay and do something new, e.g. why not try to make it a mix of sci-fi and fantasy with procedurally generated levels which will additionally save you a lot of time on level design?
|
||||||
|
|
||||||
### Some Nice Gaymes
|
## Nice Gaymes
|
||||||
|
|
||||||
[Anarch](anarch.md) and [microTD](utd.md) are examples of games trying to strictly follow the [less retarded](lrs.md) principles. [SAF](saf.md) is a less retarded game library/fantasy console which comes with some less retarded games such as [microTD](utd.md).
|
Here let be mentioned some nice games that are somewhat close to [LRS](lrs.md), at least by some considerations.
|
||||||
|
|
||||||
[Chess](chess.md) is pretty nice, if we can count it as a computer game.
|
**Computer games:** [Anarch](anarch.md) and [microTD](utd.md) are examples of games trying to closely follow the [less retarded](lrs.md) principles while still being what we would normally call a computer game. [SAF](saf.md) is a less retarded game library/fantasy console which comes with some less retarded games such as [microTD](utd.md). If you want something closer to the mainstream while caring about freedom, you probably want to check out libre games (but keep in mind they are typically not so LRS and do suck in many ways). Some of the highest quality among them are [Xonotic](xonotic.md), 0 A.D., [openarena](openarena.md), [freedoom](Freedoom.md), Neverball, SupertuxKart, [Minetest](minetest.md) etcetc. -- these are usually quite [bloated](bloat.md) though.
|
||||||
|
|
||||||
{ I recommend checking out [Xonotic](xonotic.md), it's completely libre and one of the best games I've ever played, though it's [bloat](bloat.md). ~drummyfish }
|
As for **non-computer games**: these are usually closer to LRS than any computer game. Many old board games are awesome, including [chess](chess.md), [go](go.md), [shogi](shogi.md), [xiangqi](xiangqi.md), [backgammon](backgammon.md), [checkers](cheskers.md) etc. Some card games also, TODO: which ones? :) Pen and pencil games that are amazing include [racetrack](racetrack.md), pen and pencil football etc. Nice real life physics games include [football](football.md), [marble racing](marble_racing.md) etc.
|
||||||
|
|
||||||
## Non-Computer Games
|
|
||||||
|
|
||||||
TODO: board games (table comparing them), ...
|
|
||||||
|
|
||||||
## See Also
|
## See Also
|
||||||
|
|
||||||
- [minigame](minigame.md)
|
- [minigame](minigame.md)
|
||||||
- [game engine](game_engine.md)
|
- [game engine](game_engine.md)
|
||||||
- [minigame](minigame.md)
|
- [brain software](brain_software.md)
|
||||||
- [open console](open_console.md)
|
- [open console](open_console.md)
|
||||||
- [fantasy console](fantasy_console.md)
|
- [fantasy console](fantasy_console.md)
|
||||||
- [SAF](saf.md)
|
- [SAF](saf.md)
|
||||||
|
|
6
race.md
6
race.md
|
@ -1,6 +1,6 @@
|
||||||
# Race
|
# Race
|
||||||
|
|
||||||
*All races of men are to coexist in love and peace, despite their differences.*
|
*All races of men, however different, are to coexist in love and peace.*
|
||||||
|
|
||||||
Races of people are very large, loosely defined groups of genetically similar (related) people. Races usually significantly differ by their look and in physical, mental and cultural aspects. The topic of human race is nowadays forbidden to be critically discussed and researched, however there at least exists a number of older research, information hidden in the underground and some things about race are completely obvious to those with an open mind. [Good society](less_retarded_society.md), unlike for example our current [capitalist](capitalism.md) society, acknowledges the differences between human races and lets them coexist peacefully in social equality despite their differences and without any need for [bullshit](bullshit.md) such as [political correctness](political_correctness.md).
|
Races of people are very large, loosely defined groups of genetically similar (related) people. Races usually significantly differ by their look and in physical, mental and cultural aspects. The topic of human race is nowadays forbidden to be critically discussed and researched, however there at least exists a number of older research, information hidden in the underground and some things about race are completely obvious to those with an open mind. [Good society](less_retarded_society.md), unlike for example our current [capitalist](capitalism.md) society, acknowledges the differences between human races and lets them coexist peacefully in social equality despite their differences and without any need for [bullshit](bullshit.md) such as [political correctness](political_correctness.md).
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@ Instead of the word *race* the politically correct camp uses words such as *ethn
|
||||||
|
|
||||||
**Race can be told from the shape of the skull and one's [DNA](dna.md)**, which finds use e.g. in forensics to help solve crimes. It is officially called the *ancestry estimation*. Some idiots say this should be forbidden to do because it's "racist" lmao. Besides the obvious visual difference such as skin color **races also have completely measurable differences acknowledged even by modern "science"**, for example unlike other races about 90% of Asians have dry earwax. Similar absolutely measurable differences exist in height, body odor, alcohol and lactose tolerance, high altitude tolerance, vulnerability to specific diseases, hair structure, cold tolerance, risk of obesity, behavior (see e.g. the infamous *[chimp out](chimp_out.md)* behavior of black people) and others. While dryness of earwax is really a minor curiosity, it is completely unreasonable to believe that race differences stop at traits we humans find unimportant and that genetics somehow magically avoids affecting traits that are harder to measure and which our current society deems politically incorrect to exist. In fact differences in important areas such as intelligence were measured very well -- these are however either censored or declared incorrect and "debunked" by unquestionable "science" authorities, because politics.
|
**Race can be told from the shape of the skull and one's [DNA](dna.md)**, which finds use e.g. in forensics to help solve crimes. It is officially called the *ancestry estimation*. Some idiots say this should be forbidden to do because it's "racist" lmao. Besides the obvious visual difference such as skin color **races also have completely measurable differences acknowledged even by modern "science"**, for example unlike other races about 90% of Asians have dry earwax. Similar absolutely measurable differences exist in height, body odor, alcohol and lactose tolerance, high altitude tolerance, vulnerability to specific diseases, hair structure, cold tolerance, risk of obesity, behavior (see e.g. the infamous *[chimp out](chimp_out.md)* behavior of black people) and others. While dryness of earwax is really a minor curiosity, it is completely unreasonable to believe that race differences stop at traits we humans find unimportant and that genetics somehow magically avoids affecting traits that are harder to measure and which our current society deems politically incorrect to exist. In fact differences in important areas such as intelligence were measured very well -- these are however either censored or declared incorrect and "debunked" by unquestionable "science" authorities, because politics.
|
||||||
|
|
||||||
Pseudoleft uses cheap, logically faulty arguments to deny the existence of race; for example that there are no clear objective boundaries between races -- of course there are not, but how does that imply nonexistence of race? The same argument could also be given even e.g. for the term *species* (see e.g. ring species in which the boundaries are not clear) so as to invalidate it; yet we see no one doubting the existence of various species of animals. That's like saying that color doesn't exist because given any two distinct colors there exists a gradual transition, or that [music](music.md) and noise are the same thing because objectively no clear line can be drawn between them.
|
Pseudoleft uses cheap, logically faulty arguments to deny the existence of race; for example that there are no clear objective boundaries between races -- of course there are not, but how does that imply nonexistence of race? The same argument could also be given even e.g. for the term *species* (see e.g. ring species in which the boundaries are not clear) so as to invalidate it; yet we see no one doubting the existence of various species of animals. That's like saying that color doesn't exist because given any two distinct colors there exists a gradual transition, or that [music](music.md) and noise are the same thing because objectively no clear line can be drawn between them. If by this argument races don't exist, then movie genres also don't exist.
|
||||||
|
|
||||||
The politically correct camp further argues that there wasn't enough time for human races to develop significant differences as evolution operates on scales of millions of years while the evolution of modern humans was taking part about in an order of magnitude smaller time scale. However it has been shown that **evolution can be extremely fast and make great changes in mere DECADES**, e.g. in cases of rapid environment change (shown e.g. in a documentary *Laws of the Lizard* on anoles that show signs of evolutionary change only after 14 years, also see e.g. the book *The 10,000 Year Explosion* talking about actual acceleration of human evolution) and interbreeding with other species (e.g. Neanderthals, which European population bred with but African population didn't), which did occur when humans spread around the world and had to live in vastly different conditions -- successful civilizations themselves actually furthermore started to rapidly change their environment to something that favors very different traits. It has for example been found that average male brain increased from 1372 gram in 1860 to 1424 grams in 1940, a very significant change in LESS THAN A CENTURY. We can take a look at the enormous differences between dog breeds which have been bred mostly during only the last 200 years and whose differences are enormous and not only physical, but also that of intelligence and temperament -- yes, the breeding of dogs has been selective, but a rapid change in environment may have a similar accelerating effect, and the process in humans still took many tens of thousands of years. For example races of slaves were probably selectively bred, even if unintentionally, as physically fit slaves were more likely to survive than those who were smart; similarly in prospering civilizations, e.g. that of Europe, where trade, business and development of technology (e.g. military) became more crucial for survival than in primitive desert or jungle civilizations, different traits such as intelligence became preferred by evolution.
|
The politically correct camp further argues that there wasn't enough time for human races to develop significant differences as evolution operates on scales of millions of years while the evolution of modern humans was taking part about in an order of magnitude smaller time scale. However it has been shown that **evolution can be extremely fast and make great changes in mere DECADES**, e.g. in cases of rapid environment change (shown e.g. in a documentary *Laws of the Lizard* on anoles that show signs of evolutionary change only after 14 years, also see e.g. the book *The 10,000 Year Explosion* talking about actual acceleration of human evolution) and interbreeding with other species (e.g. Neanderthals, which European population bred with but African population didn't), which did occur when humans spread around the world and had to live in vastly different conditions -- successful civilizations themselves actually furthermore started to rapidly change their environment to something that favors very different traits. It has for example been found that average male brain increased from 1372 gram in 1860 to 1424 grams in 1940, a very significant change in LESS THAN A CENTURY. We can take a look at the enormous differences between dog breeds which have been bred mostly during only the last 200 years and whose differences are enormous and not only physical, but also that of intelligence and temperament -- yes, the breeding of dogs has been selective, but a rapid change in environment may have a similar accelerating effect, and the process in humans still took many tens of thousands of years. For example races of slaves were probably selectively bred, even if unintentionally, as physically fit slaves were more likely to survive than those who were smart; similarly in prospering civilizations, e.g. that of Europe, where trade, business and development of technology (e.g. military) became more crucial for survival than in primitive desert or jungle civilizations, different traits such as intelligence became preferred by evolution.
|
||||||
|
|
||||||
|
@ -28,6 +28,8 @@ In relation to [technology](tech.md)/[math](math.md)/[science](science.md) it is
|
||||||
|
|
||||||
The smartest races in this regard seem to be [Jews](jew.md) and [Asians](asian.md) (also found so by the book *Bell Curve*), closely followed by the general white race. There is no question about the intelligence of Jews, the greatest thinkers of all times were Jewish ([Richard Stallman](rms.md), [Einstein](einstein.md), [Marx](marx.md), [Chomsky](chomsky.md), even [Jesus](jesus.md) and others). Jews seem to have a very creative intelligence while Asians are more mechanically inclined, they can learn a skill and bring it to perfection with an extremely deep study and dedication. The African black race (in older literature known as the *negro*) is decisively the least intelligent -- this makes a lot of sense, the race has been oppressed and living in harsh conditions for centuries and didn't get much chance to evolve towards good performance in intellectual tasks, quite the opposite, those who were physically fit rather than smart were probably more likely to survive and reproduce as slaves or jungle people (even if white people split from the blacks relatively recently, a rapid change in environment also leads to a rapid change in evolution, even that of intelligence). 1892 book *Hereditary Genius* says that the black race is *about two grades* below the white race (nowadays the gap will most likely be lower). Hispanics were found to perform in between the white and black people. There isn't so much info about other races such as the red race or Eskimos, but they're probably similarly intelligent to the black race (The above mentioned book *Hereditary Genius* gives an intelligence of the Australian race *at least one grade below that of the negro*). The brown races are kind of complicated, the Indian people showed a great intellectual potential, e.g. in [chess](chess.md), [math](math.md), philosophy (nonviolence inherently connected to India is the most intellectually advanced philosophy), and lately also [computer science](compsci.md) (even though many would argue that "[pajeets](pajeet.md)" are just trained coding monkeys).
|
The smartest races in this regard seem to be [Jews](jew.md) and [Asians](asian.md) (also found so by the book *Bell Curve*), closely followed by the general white race. There is no question about the intelligence of Jews, the greatest thinkers of all times were Jewish ([Richard Stallman](rms.md), [Einstein](einstein.md), [Marx](marx.md), [Chomsky](chomsky.md), even [Jesus](jesus.md) and others). Jews seem to have a very creative intelligence while Asians are more mechanically inclined, they can learn a skill and bring it to perfection with an extremely deep study and dedication. The African black race (in older literature known as the *negro*) is decisively the least intelligent -- this makes a lot of sense, the race has been oppressed and living in harsh conditions for centuries and didn't get much chance to evolve towards good performance in intellectual tasks, quite the opposite, those who were physically fit rather than smart were probably more likely to survive and reproduce as slaves or jungle people (even if white people split from the blacks relatively recently, a rapid change in environment also leads to a rapid change in evolution, even that of intelligence). 1892 book *Hereditary Genius* says that the black race is *about two grades* below the white race (nowadays the gap will most likely be lower). Hispanics were found to perform in between the white and black people. There isn't so much info about other races such as the red race or Eskimos, but they're probably similarly intelligent to the black race (The above mentioned book *Hereditary Genius* gives an intelligence of the Australian race *at least one grade below that of the negro*). The brown races are kind of complicated, the Indian people showed a great intellectual potential, e.g. in [chess](chess.md), [math](math.md), philosophy (nonviolence inherently connected to India is the most intellectually advanced philosophy), and lately also [computer science](compsci.md) (even though many would argue that "[pajeets](pajeet.md)" are just trained coding monkeys).
|
||||||
|
|
||||||
|
Fun fact: there seem to be almost no black people in [chess](chess.md), the strongest one seems to be Pontus Carlsson which rates number 1618 in the world; even [women](woman.md) seem to be much better at chess than black people.
|
||||||
|
|
||||||
Increasing multiculturalism and mixing of the races will likely make all of this less and less relevant. But for now the differences still stand.
|
Increasing multiculturalism and mixing of the races will likely make all of this less and less relevant. But for now the differences still stand.
|
||||||
|
|
||||||
[LRS](lrs.md) philosophy is of course FOR multiculturalism and mixing of races. Biodiversity is good and it would probably also help reduce racial [fascism](fascism.md)/nationalism.
|
[LRS](lrs.md) philosophy is of course FOR multiculturalism and mixing of races. Biodiversity is good and it would probably also help reduce racial [fascism](fascism.md)/nationalism.
|
||||||
|
|
|
@ -1,5 +1,34 @@
|
||||||
# Smallchesslib
|
# Smallchesslib
|
||||||
|
|
||||||
TODO
|
Smallchesslib (SCL) is a small [CC0](cc0.md) [LRS](lrs.md)/[suckless](suckless.md) [chess](chess.md) [library](library.md) written in [C](c.md) by [drummyfish](drummyfish.md). It is a single header library written in fewer than 4000 lines of code, with no [dependencies](dependency.md) and comes with a tiny engine called *smolchess*. It implements the basic chess rules as well as those of chess960, convenience functions (even primitive board picture export), handling of basic formats such as FEN and PGN, and a simple alpha-beta minimax [AI](ai.md) -- *smolchess* played on lichess where it got a rating of about 1500 (https://lichess.org/@/smolchessbot). The repository is available at https://codeberg.org/drummyfish/smallchesslib. Smallchesslib/smolchess is extremely simple and been tested to run even on super weak platform such as [Arduboy](arduboy.md) which only has some 2 KB of RAM! That's pretty incredible, no?
|
||||||
|
|
||||||
The repository is available at https://codeberg.org/drummyfish/smallchesslib.
|
```
|
||||||
|
A B C D E F G H
|
||||||
|
8 r:: b:: k:: n:r
|
||||||
|
7 :: p:p :: p::
|
||||||
|
6 p:b n:: :: :p
|
||||||
|
5 ::# :: :P :p
|
||||||
|
4 ::#B:: N:: ::
|
||||||
|
3 :P :: :: N::
|
||||||
|
2 :P P:B :: P:P
|
||||||
|
1 :R :: :K :: R
|
||||||
|
|
||||||
|
white played b5c4
|
||||||
|
black to move
|
||||||
|
|
||||||
|
ply number: 27
|
||||||
|
FEN: r1b1k1nr/1pp2p2/pbn4p/4P1p1/2B1N3/P4N2/1PPB2PP/R3K2R b KQ - 1 14
|
||||||
|
board static evaluation: 0.167969 (43)
|
||||||
|
board hash: 3262264934
|
||||||
|
phase: midgame
|
||||||
|
en passant: 0
|
||||||
|
50 move rule count: 1
|
||||||
|
PGN: 1. e4 e5 2. d4 d5 3. dxe5 dxe4 4. Qxd8+ Kxd8 5. f3 exf3 6. Nxf3 Ke8 7. Nc3 Bb4 8. a3 Bc5 9. Ne4 Bb6 10. Bg5 h6 11. Bf4 g5
|
||||||
|
12. Bb5+ Nc6 13. Bd2 a6 14. Bc4*
|
||||||
|
```
|
||||||
|
|
||||||
|
*"Screenshot" of smolchess in action, playing against itself.*
|
||||||
|
|
||||||
|
Technical details: it's no [stockfish](stockfish.md), simplicity is favored over strength. Evaluation function is hand-made with 16 bit integer score (no [float](float.md)!). Board is represented as an [array](array.md) of bytes (in fact it's an array of [ASCII](ascii.md) characters that can conveniently be printed right out). AI uses basic [recursive](recursion.md) minimax and alpha-beta pruning, with quiescence handled by extending search for exchanges and checks. For simplicity there is no move ordering, transposition table, opening book or similar fanciness, so the performance isn't great, but it manages to play some intermediate moves. Xboard is supported.
|
||||||
|
|
||||||
|
While there are many high level engines focusing on maximizing playing strength, there are almost no seriously simple ones focusing on other points -- smallchesslib/smolchess tries to change this. It can be used as an educational tool, a basis for other engines, a simple engine runnable on weak devices, a helper for processing standard chess formats etc.
|
||||||
|
|
|
@ -8,7 +8,7 @@ Sodevs are incompetent wanna-be programmers that usually have these characterist
|
||||||
- Being actually bad at programming, using meme high-level languages like [JavaScript](javascript.md), [Python](python.md) or [Rust](rust.md). { I shit you not, I learned from a friend who lives in India that "universities" there produce "security experts" who don't even have to know any programming and math. They just learn some sysadmin stuff and installing antiviruses, without having any clue about how encryption works etc. These people get regular degrees. Really makes me wanna kys myself. ~drummyfish }
|
- Being actually bad at programming, using meme high-level languages like [JavaScript](javascript.md), [Python](python.md) or [Rust](rust.md). { I shit you not, I learned from a friend who lives in India that "universities" there produce "security experts" who don't even have to know any programming and math. They just learn some sysadmin stuff and installing antiviruses, without having any clue about how encryption works etc. These people get regular degrees. Really makes me wanna kys myself. ~drummyfish }
|
||||||
- Using a [Mac](mac.md).
|
- Using a [Mac](mac.md).
|
||||||
- Thinking they're experts in technology because they are familiar with the existence of [Linux](linux.md) (usually some mainstream distro such as [Ubuntu](ubuntu.md)) and can type `cd` and `ls` in the terminal.
|
- Thinking they're experts in technology because they are familiar with the existence of [Linux](linux.md) (usually some mainstream distro such as [Ubuntu](ubuntu.md)) and can type `cd` and `ls` in the terminal.
|
||||||
- Being only briefly aware of the tech culture, telling big-bang-theory level jokes (*sudo make sandwich*, [42](42.md) hahahahahahaha).
|
- Having only shallow awareness of tech culture, telling big-bang-theory HTML jokes (*sudo make sandwich*, [42](42.md) hahahahahahaha).
|
||||||
- Being highly active on social networks, probably having a pixel-art portrait of their ugly face and "personal pronouns" on their profile.
|
- Being highly active on social networks, probably having a pixel-art portrait of their ugly face and "personal pronouns" on their profile.
|
||||||
- Believing in and engaging in [capitalism](capitalism.md), believing corporations such as [Microsoft](microsoft.md), wanting to create "startups", being obsessed with [productivity](productivity_cult.md), inspirational quotes and masturbating to tech "visionaries" like [Steve Jobs](steve_jobs.md). The "rebels" among these are advocating [FOSS](foss.md), however they always promote huge [bloat](bloat.md) and de-facto [capitalist software](capitalist_software.md) which is no different from proprietary software.
|
- Believing in and engaging in [capitalism](capitalism.md), believing corporations such as [Microsoft](microsoft.md), wanting to create "startups", being obsessed with [productivity](productivity_cult.md), inspirational quotes and masturbating to tech "visionaries" like [Steve Jobs](steve_jobs.md). The "rebels" among these are advocating [FOSS](foss.md), however they always promote huge [bloat](bloat.md) and de-facto [capitalist software](capitalist_software.md) which is no different from proprietary software.
|
||||||
- Using buzzwords like "solution", "orchestration" etc.
|
- Using buzzwords like "solution", "orchestration" etc.
|
||||||
|
|
|
@ -117,7 +117,7 @@ Some stereotypes are:
|
||||||
- [jews](jew.md):
|
- [jews](jew.md):
|
||||||
- very smart, inventive
|
- very smart, inventive
|
||||||
- greedy
|
- greedy
|
||||||
- good at [business](business.md)
|
- good at [business](business.md), filthy [capitalists](capitalism.md)
|
||||||
- have the "eagle nose"
|
- have the "eagle nose"
|
||||||
- members of secret societies, closed jew-only communities, conspire for world control, some being [fascists](fascism.md) wanting to become the ruling race
|
- members of secret societies, closed jew-only communities, conspire for world control, some being [fascists](fascism.md) wanting to become the ruling race
|
||||||
- spread everywhere like rats
|
- spread everywhere like rats
|
||||||
|
|
|
@ -43,7 +43,7 @@ Here are some [pro](pro.md) tips to git gud, impress your frens and generally ha
|
||||||
- **Make cool binds**, for example you should modify the standard team messages to something more funny. One of the most basic binds is **taunt** so that you can insult players (e.g. `bind KP_SLASH "cmd voice taunt"`).
|
- **Make cool binds**, for example you should modify the standard team messages to something more funny. One of the most basic binds is **taunt** so that you can insult players (e.g. `bind KP_SLASH "cmd voice taunt"`).
|
||||||
- **Lower your mouse sensitivity**, this is really crucial to git gud, it's almost impossible to be good with high sens. Lower sensitivity increases your accuracy greatly, which is just key, it's almost like an instant [cheat](cheating.md); of course you'll need a bit bigger mouse pad. Write down what sensitivity you have as **centimeters per 360 turn** (measure this carefully with a ruler), this will help you achieve exact same sensitivity when you buy a different mouse. Something like 22 cm per 360 turn is probably good. It is good to set your sensitivity as early as possible so you don't have to later relearn you muscle memory.
|
- **Lower your mouse sensitivity**, this is really crucial to git gud, it's almost impossible to be good with high sens. Lower sensitivity increases your accuracy greatly, which is just key, it's almost like an instant [cheat](cheating.md); of course you'll need a bit bigger mouse pad. Write down what sensitivity you have as **centimeters per 360 turn** (measure this carefully with a ruler), this will help you achieve exact same sensitivity when you buy a different mouse. Something like 22 cm per 360 turn is probably good. It is good to set your sensitivity as early as possible so you don't have to later relearn you muscle memory.
|
||||||
- **Make basic graphics settings**, for example increase FOV (field of view) to at least 100, disable effects such as zoom animation (so that you can zoom quickly) etc. If you want to play seriously you should also **turn off music** so that you can hear enemies better. You can also downgrade the graphics so as to make it basically look like Quake 1, either for a cool retro look or to play the game on a [potato](potato.md).
|
- **Make basic graphics settings**, for example increase FOV (field of view) to at least 100, disable effects such as zoom animation (so that you can zoom quickly) etc. If you want to play seriously you should also **turn off music** so that you can hear enemies better. You can also downgrade the graphics so as to make it basically look like Quake 1, either for a cool retro look or to play the game on a [potato](potato.md).
|
||||||
- **Don't fall for the F11 [troll](troll.md)** -- when you ask how to do something and people respond with "press F11", don't do it, you'll humiliate yourself.
|
- **Don't fall for the F11 [troll](troll.md)** -- when you ask how to do something and people respond with "press F11", don't do it, you'll humiliate yourself. { Faggot devs disabled it now I think. RIP fun. ~drummyfish }
|
||||||
- **Enable cheats with F11**.
|
- **Enable cheats with F11**.
|
||||||
- **Spin to win**: you can make a cool spinning macro that makes you look like you have a seizure: e.g. `bind b "toggle vid_stick_mouse; rpn /m_pitch 1 ${vid_stick_mouse} - 0.022 * =;"`.
|
- **Spin to win**: you can make a cool spinning macro that makes you look like you have a seizure: e.g. `bind b "toggle vid_stick_mouse; rpn /m_pitch 1 ${vid_stick_mouse} - 0.022 * =;"`.
|
||||||
- Once you have a comfy config, you can remove the write rights to it (`chmod -w ~/.xonotic/data/config.cfg`). This way the game won't be able to modify the config and all settings and experiments you make in the game will only be temporary, until the game restart, so you can't fuck up your settings.
|
- Once you have a comfy config, you can remove the write rights to it (`chmod -w ~/.xonotic/data/config.cfg`). This way the game won't be able to modify the config and all settings and experiments you make in the game will only be temporary, until the game restart, so you can't fuck up your settings.
|
||||||
|
|
2
zen.md
2
zen.md
|
@ -2,6 +2,8 @@
|
||||||
|
|
||||||
Zen, a term coming from zen [Buddhism](busshism.md) (the word itself from *dhyana*, meaning *meditation*), means emphasis on mediation that leads to enlightenment; in a wider sense it hints on related things and feelings such as tranquility, spiritual peace, sudden coming to realization and understanding. In [hacker](hacking.md) speech *zen* is a very frequent term, according to [Jargon file](jargon_file.md) "to zen" means to understand something by simply meditating about it or by sudden realization (as opposed to e.g. active [trial and error](trial_and_error.md)).
|
Zen, a term coming from zen [Buddhism](busshism.md) (the word itself from *dhyana*, meaning *meditation*), means emphasis on mediation that leads to enlightenment; in a wider sense it hints on related things and feelings such as tranquility, spiritual peace, sudden coming to realization and understanding. In [hacker](hacking.md) speech *zen* is a very frequent term, according to [Jargon file](jargon_file.md) "to zen" means to understand something by simply meditating about it or by sudden realization (as opposed to e.g. active [trial and error](trial_and_error.md)).
|
||||||
|
|
||||||
|
[Wikiwikiweb](wikiwikiweb.md) has a related discussion under *ZenConcepts*.
|
||||||
|
|
||||||
TODO
|
TODO
|
||||||
|
|
||||||
## See Also
|
## See Also
|
||||||
|
|
Loading…
Reference in a new issue