c0rupted / vitrix Goto Github PK
View Code? Open in Web Editor NEWAn open source FPS video game coded in Python
License: GNU General Public License v3.0
An open source FPS video game coded in Python
License: GNU General Public License v3.0
Tracking issue for Windows build support
When you click the x
to close the window, the window closes, and the process doesn't stop. This uses unnecessary ram space, of up to 50 MBs.
A way around this is to terminate the process with Ctrl+C, or through the task manager, but the inefficiency is likely to be a problem when launching from gui, so a fix is required.
It seems that when loading the game, the pistol is loading, but is not visible.
This is an issue where it shows that the aspect ratio of the window changes, but does it alot.
Here is the ouput of the log:
package_folder: /home/kanj/.local/lib/python3.9/site-packages/ursina
asset_folder: /home/kanj/Vitrix
OS: posix
screen resolution: (1366, 768)
Known pipe types:
glxGraphicsPipe
(4 aux display modules not yet loaded.)
Xlib: extension "XFree86-DGA" missing on display ":0".
:pnmimage:png(warning): iCCP: known incorrect sRGB profile
info: development mode: True
application successfully started
info: changed aspect ratio: 1.779 -> 1.333
info: changed aspect ratio: 1.333 -> 1.779
info: changed aspect ratio: 1.779 -> 1.333
info: changed aspect ratio: 1.333 -> 1.779
info: changed aspect ratio: 1.779 -> 1.333
info: changed aspect ratio: 1.333 -> 1.779
and etc...
Update to python 3.10 in next pre-built release.
So we can use match: case
instead of if: elif: else
and improve game performance
c:\source\Vitrix>python build.py
Build Path: C:\source\Vitrix/build
------------------------------------------------------------------------------------------------------------------------
Preparing...
Done!
------------------------------------------------------------------------------------------------------------------------
Building...
C:
from distutils.dir_util import copy_tree
package_folder: C:
asset_folder: .
screen resolution: (1920, 1080)
building project: C:
copying python
copying python Lib files
copying always included modules and extra modules
copying always include: C:
copying always include: C:
copying always include: C:
copying always include: C:
copying always include: C:
copying always include: C:
copying always include: C:
copying always include: C:
copying always include: C:
copying always include: C:
copying always include: C:
copying always include: C:
copying always include: C:
copying panda3d
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying: C:
copying ursina
compiling: C:
compiling: C:
compiling: C:
compiling: C:
compiling: C:
compiling: C:
compiling: C:
compiling: C:
compiling: C:
compiling: C:
compiling: C:
compiling: C:
compiling: C:
copying assets
ignore: C:
copying assetfolder: C:
ignore: C:
ignore: C:
copying assetfolder: C:
copying asset: C:
copying asset: C:
copying asset: C:
copying asset: C:
copying asset: C:
copying assetfolder: C:
ignore: .py
copying assetfolder: C:
C:
ignore: .py
ignore: .py
ignore: .py
creating .bat file
build complete! time elapsed: 8.46418023109436
Traceback (most recent call last):
File "c:\source\Vitrix\build.py", line 106, in <module>
shutil.rmtree(build_path + item)
File "C:\Users\turus\AppData\Local\Programs\Python\Python310\lib\shutil.py", line 747, in rmtree
return _rmtree_unsafe(path, onerror)
File "C:\Users\turus\AppData\Local\Programs\Python\Python310\lib\shutil.py", line 598, in _rmtree_unsafe
onerror(os.scandir, path, sys.exc_info())
File "C:\Users\turus\AppData\Local\Programs\Python\Python310\lib\shutil.py", line 595, in _rmtree_unsafe
with os.scandir(path) as scandir_it:
FileNotFoundError: [WinError 3] The system cannot find the path specified: 'C:\\source\\Vitrix/build/src/test'
c:\source\Vitrix>
Above is the output from command prompt, error message being FileNotFoundError: [WinError 3] The system cannot find the path specified: 'C:\source\Vitrix/build/src/test'
The title just explains it. On client-side, it appears as if the player is taking damage, but the player on the other client isn't receiving the damage.
When connecting to a server that isn't running, Vitrix throws the error above. I don't know why, but am trying to investigate.
When building for the first time, windows python throws the error:
FileNotFoundError: [WinError3] The system cannot find the path specified: [build_location]
The title explains. I mean, the whole reason the build process is even there is so you don't have to have python installed to run Vitrix.
The idea is a basic new server object called, "message", a new UI class that is used as a display for all the messages received. All of this and some other few perks and features I may add
At the moment, the server_chooser.py doesn't work. It says, Invalid Port Number!
, even thought the entered port is fine.
Things to remove so the game is not too big (Windows):
vitrix/python/Lib/_pycache_/
vitrix/python/Lib/email/
vitrix/python/Lib/logging/_pycache_/ (and basically every _pycache_ folder)
vitrix/python/Lib/lib2to3/
vitrix/python/Doc/
vitrix/python/Tools/demo/
vitrix/python/Scripts/egg2maya*.exe
vitrix/python/Scripts/maya2egg*.exe
vitrix/python/Scripts/mayacopy*.exe
vitrix/python/Lib/site-packages/_pycache_/
When you remove all of these, the game is ~253 mb big
I'm gonna add more later
When you die, and the You Died!
text appears on the screen, the mouse cursor doesn't escape grabb. So you have to use the tab
key to pause the game, but even though it works, the Paused
text actually covers the You Died!
text, and makes half of it unreadable.
venvctl
should be in requirements. But even after that the paths are kind of warbled around and the only way I got it to run was to go inside the linux build, activate the virtual env, install ursina, create the '.unbuilt' file and run singleplayer.py directly.
and only way to quit seems to be alt+f4.
Add more settings and read/write user/settings.json
I came across this issue when building multiplayer for Windows. It doesn't seem to bother the Linux build with VenvCtl
though.
Using,
if __name__ = '__main__':
app.run()
allow other people reading the code know that menu.py is to be ran directly.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.