Jump to content

User:Wosly

From Wikipedia, the free encyclopedia

Wosly

[edit]

My name is Wosly and I am an avid Python programmer, conlanger, computer builder, and science enthusiast. I spend a lot of my free time researching random science facts and creating new programming projects in Python. Additionally, I love to create conlangs, and my latest project, Horst, is heavily influenced by French. When I'm not programming or conlanging, you can often find me building LEGO sets, especially ones related to space. I also enjoy programming on my TI-84 Plus CE calculator using TI-Basic, and I'm particularly proud of my implementation of Flappy Bird (Recently I got a NumWorks calculator, and I am really enjoying it. If you have any preferences as to Upsilon or Omega, please tell me! I'm still on the fence, though I might dualboot). All in all, I am a curious and creative person who loves to explore new areas of knowledge and challenge myself to learn and grow in new ways, as long as I find that the benefits outweigh the time it would take to learn them :)

Conlangs

[edit]

My first and only conlang is called Horst, which mainly uses French as a crutch to stand on. It has some Spanish or German based words, but it is mainly French simplified (or complex-ified) to fit the requirements of the language. I may add some more of the actual rules for it here in the future.

Programs

[edit]

Python

[edit]
Screenshot of Realm of the Lost.

My python programs are quite varied, and they don't do very much. Also, what they do do isn't very impressive.

Realm of the Lost

[edit]

Realm of the Lost is a silly little text-based adventure game that I made. It has various characters to meet and puzzles to solve. Players must navigate their way through the game to "uncover the secrets of the lost realm". The game features an inventory system and different items, each with unique abilities.

Here's some of the code I use to format the world map:

map = (('w', 'w', 'w', 'w', 'w', 'w', 'w', 'w', 'w', 'w', 'w', 'w', 'w', 'w', 'w'),
       ('w', 'g', 'g', 'g', 'g', 'g', 'm', 'g', 'g', 'g', 'g', 'g', 'g', 'g', 'w'),
       ('w', 'g', 'm', 'g', 'g', 'g', 'g', 'g', 'f', 'f', 'f', 'f', 'g', 'f', 'w'),
       ('w', 'g', 'g', 'g', 'g', 'g', 'g', 't', 's', 'f', 'f', 'f', 'f', 'f', 'w'),
       ('w', 'g', 'g', 't', 'g', 'g', 'f', 'f', 'f', 'f', 'f', 'f', 'f', 'f', 'w'),
       ('w', 'g', 'g', 'g', 'g', 'f', 'f', 'f', 'f', 'f', 'f', 'f', 'c', 'c', 'w'),
       ('w', 'g', 'g', 'g', 'f', 'f', 'f', 'f', 'f', 'f', 'f', 'c', 'c', 'c', 'w'),
       ('w', 'g', 'g', 'f', 'f', 'm', 'f', 'f', 'f', 'f', 'c', 'c', 'c', 'c', 'w'),
       ('w', 'g', 'f', 'f', 'f', 'f', 'f', 'f', 'f', 'c', 'c', 'c', 'b', 'm', 'w'),
       ('w', 'g', 'f', 'f', 'f', 'f', 'f', 'f', 'c', 'c', 'c', 'c', 'c', 'c', 'w'),
       ('w', 'f', 'f', 'f', 'f', 'f', 'f', 'c', 'b', 'c', 'c', 'c', 'c', 'c', 'w'),
       ('w', 'f', 'f', 'f', 'f', 'f', 'c', 'c', 'c', 'c', 's', 'f', 'f', 'f', 'w', ' N '),
       ('w', 'f', 'f', 'f', 'b', 'c', 'b', 'c', 'c', 'f', 'f', 'f', 'f', 'f', 'w', ' W + E'),
       ('w', 'f', 'f', 'c', 'c', 's', 'c', 'f', 'f', 'f', 'f', 'f', 'f', 'f', 'w', ' S'),
       ('w', 'w', 'w', 'w', 'w', 'w', 'w', 'w', 'w', 'w', 'w', 'w', 'w', 'w', 'w')
)
Screenshot of SwishPainter.

SwishPainter

[edit]

SwishPainter is currently unfinished, but I plan to finish it soon. It features a display in the terminal which allows you to use the mouse to draw on the screen. As of yet, the only colors are red and yellow, and there are no tools. I plan to implement a pen, a circle, a line drawer, and an eraser.

Dictionary Formatter

[edit]

This program doesn't really have a name, I just am using it to format my Horst Dictionary. It works by giving you a choice to read out or write. Writing allows you to add an English word, a Horst Word, and then extra info and a part of speech. It writes this information to three separate files, then prompts you again. Upon choosing read out, it writes an alphabetically formatted combination of the three files to another file called dictout.txt. An example of dictout.txt is provided below.

====================ENGLISH TO HORST====================
A
Horst Word: On
Part of Speech: Indefinite article

Ability
Horst Word: Capacé
Part of Speech: Noun

Able
Horst Word: Capací
Part of Speech: Adj.

About
Horst Word: Concereté
Part of Speech: Adj.

Above
Horst Word: Surí
Part of Speech: Adj.

Above
Horst Word: Surí
Part of Speech: Adj.

Accept
Horst Word: Accepten
Part of Speech: Verb

According
Horst Word: Pour
Part of Speech: Adj.

Account (n)
Horst Word: Historé
Part of Speech: Noun

Account (v)
Horst Word: Dicen
Part of Speech: Verb

Across
Horst Word: Traví
Part of Speech: Adj.

======================JORST O AŊLAI=====================
Accepten
Palan dof Aŋlai: Accept
Roulé dof Dicé: Verb

Capacé
Palan dof Aŋlai: Ability
Roulé dof Dicé: Noun

Capací
Palan dof Aŋlai: Able
Roulé dof Dicé: Adj.

Concereté
Palan dof Aŋlai: About
Roulé dof Dicé: Adj.

Dicen
Palan dof Aŋlai: Account
Roulé dof Dicé: Verb

Historé
Palan dof Aŋlai: Account
Roulé dof Dicé: Noun

On
Palan dof Aŋlai: A
Roulé dof Dicé: Indefinite article

Pour
Palan dof Aŋlai: According
Roulé dof Dicé: Adj.

Surí
Palan dof Aŋlai: Above
Roulé dof Dicé: Adj.

Surí
Palan dof Aŋlai: Above
Roulé dof Dicé: Adj.

Traví
Palan dof Aŋlai: Across
Roulé dof Dicé: Adj.

TI-Basic

[edit]

I mostly write games and programs that let me do math problems faster, as it is a calculator.

Flappy Bird

[edit]
Screenshot of animated title screen. The "<" and ">" bounce around, like birds.
Screenshot of the gameplay. The bird, ">" moves up and down, while the pipes move to the left.

If you are unfamiliar with Flappy Bird, that's really sad. You should read the Wikipedia page about it. My program runs using the Output() command in TI-Basic (please note that I wrote this on a TI-84 Plus CE, so the screen dimensions are 10x26) to place characters on the screen. A ">" denotes the bird, and double sets of "##" constitute the pipes. It has an animated death and startup screen. The code is below. A more technical / detailed description is underneath the code.

ClrHome
Output(4,8,"Flappy Bird")
0→P
0→X
2→H
27→B
9→L
Repeat getKey=105
X+1→X
B-1→B
Output(6,8,"Press Enter")
Output(H,X,">")
Output(L,B,"<")
Wait 0.2
Output(H,X,"  ")
Output(L,B,"  ")
If X≠26 and B≠1
Then
If H=2
Then
1→H
10→L
Else
9→L
2→H
End
End
If X=26
1→X
If B=1
26→B
End
ClrHome
.05→S
3→U
1→N
randInt(3,8)→D
randInt(1,10-D-1)→T
T+D→B
25→X
While N
Wait abs(S)
getKey→K
Output(U,8," ")
If K≠0 and U≠1
U-1→U
If K=0 and U≠10
U+1→U
If (K=0 and U=10) or (U≤T and X=8) or (U≥B and X=8) or (U≤T and X=7) or (U≥B and X=7)
Then
0→N
Else
If X=8
P+1→P
End
If K=21 or K=31
Then
Output(U,8,">")
Output(1,1,"Paused.")
Pause 
For(I,3,1,­1)
Output(1,1,toString(I)+"      ")
Wait .5
End
Output(1,1,"       ")
End
Output(10,23,P)
Output(U,8,">")
For(L,1,T)
Output(L,X,"## ")
End
For(L,B,10)
Output(L,X,"## ")
End
X-1→X
If X=0
Then
Wait S
For(X,1,T)
Output(X,1,"# ")
End
For(X,B,10)
Output(X,1,"# ")
End
Wait S
For(X,1,10)
Output(X,1," ")
End
25→X
randInt(3,5)→D
randInt(1,10-D-1)→T
T+D→B
End
If S>0
S-0.000001→S
End
Wait .2
For(X,1,10)
Disp " "
End
">"→Str1
For(X,10,1,­1)
For(Y,26,1,­1)
Output(X,Y,Str1)
End
If Str1=">"
Then
"<"→Str1
Else
">"→Str1
End
End
For(X,7,3,­1)
For(Y,19,7,­1)
Output(X,Y," ")
End
End
Output(4,9,"You Died!")
Output(6,8,"Press Enter")
Pause 
prgmTFLAPPY "or just recall whatever you name the program
The red text shows what some of the variables in gameplay are.

The game involves navigating a bird through a series of obstacles by repeatedly tapping a key to flap the bird's wings and gain altitude.

The program starts by clearing the calculator's display screen and displaying the title, Flappy Bird, in the center of the screen. It features flapping birds until you decide to press enter, like it tells you to. It initializes multiple variables, like the number of points (P), the bird's vertical position (U), the horizontal position of the obstacles (X), the scrolling speed (S), the "death boolean" (N), the bottom of the top pipe (T), and the top of the bottom pipe (B), just to name a few.

The game is played in a loop, with each iteration representing one frame of the game. If the user presses a key, it updates the bird's position and the position of the obstacles, then displays them on the screen. Otherwise the bird falls slightly. The game ends when the bird collides with an obstacle or falls off the bottom of the screen.

The program also includes some features such as a pause function (press 2nd or alpha), a score counter, and an animated message displayed when the game is over.