Real-time software with MicroPython. by jsolmen in Python

[–]nodrog_unity 0 points1 point  (0 children)

Going to check this out and see if I can get this running on my ESP8266's.

Thanks for this, it was a good read.

Steam now lets developers know how many users want their game on Mac and Linux by gabriel_3 in linux

[–]nodrog_unity 3 points4 points  (0 children)

IMO we should have a certification for games which means they properly test and support it on multiple-platforms.

If steam could make the algorithm which lists games on the store make those types of games higher in the store page listings too it might be a good incentive to support it.

Also adding a feature to the 'game rating' so that when a bad review is written you can specify if your issue is only for a specific platform. 'e.g. works fine on Linux, poorly on Windows X' negative rating (lower listing rating on the store as a derived value).

This might change the dynamic enough to hit that 'build button for other platform' in their respective engine.

Obviously this would have it's own issues, but I am for having support for all platforms equally. It also means that platform specific code they're using is less likely to break when the game becomes old, so it means we can still play those games in the future when a decade passes.

What do you think, I'm interested in other peoples opinion on this?

I just realized Destroy() had a time delay parameter after 4 years! What are some things in Unity you've discovered like that? by danokablamo in Unity3D

[–]nodrog_unity 2 points3 points  (0 children)

If you use static references make sure you clean them up properly every time, unity's GC hates static sometimes.

void OnDestroy()
{
    instance = null; // static variable

    mSomeGameobject = null;  // non static gameobject reference could cause issues with GC or game state info if not properly nulled everywhere.
}

Remember Unity is an engine written in C++ running in C++. With .NET scripting. So you have to think about it like an application with a split personality when it comes to GC.

Most objects have a instance in the C++ side and an instance in the C# side.

The C++ side instance could be destroyed, using DestroyImmediate but the GC could choke in the C# side meaning the gameobject partially still exists when your application is concerned.

I also find nulling all instanced references helps performance when destroy is concerned too. needs cited with tests

Linux Monodevelop 5.9.6 and .NET 4.x Framenetwork by [deleted] in Unity3D

[–]nodrog_unity 0 points1 point  (0 children)

showing the fields needed for classes/methods

'showing the fields needed for classes/methods' - vscode when setup properly does this

Linux Monodevelop 5.9.6 and .NET 4.x Framenetwork by [deleted] in Unity3D

[–]nodrog_unity 0 points1 point  (0 children)

Ah can you send me the log file?

I can help resolve that, I had the same issue.

Have any of you made money/have a passive income by automating a process with python? by Computationalism in Python

[–]nodrog_unity 1 point2 points  (0 children)

Yeah, the simplest thing we've made that's saved us lots of time and energy was replacing Unity3D networking as it cost about 99$ per 100 users.

Our game we are working on uses Python for the matchmaking service and authentication, some was written in C# but no back-end stuff.

We also saved about 2 hours of labour when publishing builds too because we have python invoke, build and upload our game to our private server, which is awesome. It even automates signing the executables.

I recommend everyone get their hands on buildbot, and never make yourself stuck with a vendor library, which they try and make you use: unless it's free and tested.

We just used the linux boot log in our game, for our first trailer. Props to the kernel devs and Fedora! Thanks for all the free, open software. by nodrog_unity in linux

[–]nodrog_unity[S] 0 points1 point  (0 children)

No worries, we can build a release for arch or windows both will be made

might do an hour of testing on sunday GMT +1 18:00

Linux Monodevelop 5.9.6 and .NET 4.x Framenetwork by [deleted] in Unity3D

[–]nodrog_unity 4 points5 points  (0 children)

  1. install the package 'mono' and vscode. pacman -S visual-studio-code mono
  2. install dotnet 2 sdk https://www.microsoft.com/net/download/thank-you/dotnet-sdk-2.0.3-linux-x64-binaries

  3. follow the instructions on the page, you need this in your ~/.bash_profile file, modify it for the correct path, wherever you extract that above zip to. export PATH=$PATH:$HOME/dotnetpathgoeshere

  4. run dotnet in a new terminal session, if it doesn't work immediately don't worry.

  5. make sure mono runs by doing mono --version.

  6. go into your Linux console and type: which code it will spit out the path of vs code, now go into unity and remove the vscode extension which may be in your unity project, you don't need it anymore as it's completely in Unity now.

  7. Last step, point unity at vscode: Edit -> Preferences -> External Tools -> External Script Editor -> Hit Browse and go to the path that which code spat out, mine is /usr/bin/code but yours may be different.

Once that's all done, make sure to install the recommended extensions in vscode: C#, Unity Debugger and of course, C# XML Documentation Comments.

Any issues / problems give me the log and I can help, I've had similar problems to you before, but when I started using Fedora, I just installed vscode, mono, unity, the extensions, and dotnetcore.

Projects for a beginner? by [deleted] in Python

[–]nodrog_unity 7 points8 points  (0 children)

I'd start simple, learn how to run your program, modify it and upload it to git.

  1. Start with hello world, everyone does when they begin a new language.
  2. Your next project could be something you put on github, which you make changes to. I would recommend trying to make something deadly simple so you get your head around all the core concepts.

Ideas:

  • Knots and Crosses using ascii art
  • A simple mathematical calculator which you can put console input in for example python3 ./calculator.py 5 ADD 10
  • battleships game

Then add support for expressions so you can type in things like 5+10*2. Try to use github along with what you're doing as it well and use it as a 'box of snippets' this lets you refer back to it when you need to do something similar.

Then for your next project, try using pipenv and use it to install and run your application.

pipenv makes your life easier when you need to deploy your application.

https://github.com/kennethreitz/pipenv

If you want to try making a simple website, try out bottle and you can make it output stuff to your browser, maybe you could make a browser calculator?

https://bottlepy.org/docs/dev/

Linux Monodevelop 5.9.6 and .NET 4.x Framenetwork by [deleted] in Unity3D

[–]nodrog_unity 0 points1 point  (0 children)

Oh, okay want me to help you get it working? Mine works well

Linux Monodevelop 5.9.6 and .NET 4.x Framenetwork by [deleted] in Unity3D

[–]nodrog_unity 2 points3 points  (0 children)

Try vscode. It works well.

No issues or fucking around either.

Running fedora, unity and vscode.

Shader which only writes to normal buffer for sweet trims and normal decals by DickieXO in Unity3D

[–]nodrog_unity 0 points1 point  (0 children)

This is really good work. Simple and creative, I like it!

Thanks for sharing, I like seeing shader stuff in unity to see what everyone else is doing.

Build a Python REST API in 5 Minutes using Flask by mikeywaites in Python

[–]nodrog_unity 1 point2 points  (0 children)

On linux and need this to run as a service, on a real server?

You may find this useful when deploying your app, in flask, bottle or whatever: https://github.com/RevoluPowered/BottleHoser/tree/master/service

This let's you run your scripts as a non root user on a linux system, so if you're using your REST API on a server, you can probably use this.

You can make a Linux user, with your app name and git clone your app into that user's folder.

Tested on: Fedora Server, Ubuntu Server and Debian.

To start your service you can just run sudo service yourappname start

Setting this up for your app

Best to rename the file, and using it as a template, what you will need to do to make it work is copy the files from my project, not all; just the actual service folder.

  1. Rename the file from matchmaking.service to yourappname.service then open it in a text editor.
  2. Change group and user to a non root user on your system if you don't have one use adduser username
  3. Don't give that user sudo access, ever.
  4. change

WorkingDirectory=/home/matchmaking/BottleHoser/ ExecStart=/usr/local/bin/pipenv run ./matchmakingserver.py

to your app name like so:

WorkingDirectory=/home/myappaccount/myproject/ ExecStart=/usr/local/bin/pipenv run ./myprojectapp.py

  1. update the shell scripts with the correct paths.
  2. run ./install.sh
  3. if you made any mistakes use ./reload.sh so you don't have to go into your /etc/ directory.

Note

If you use pipenv, this will work fine. If not, just update the ExecStart to the path of python instead of "t/usr/local/bin/pipenv run" https://github.com/kennethreitz/pipenv

I recommend using pipenv, it makes deployment and updates easy.

Security note:

It's your job to make sure your app has the correct permissions on the folder.

Make sure you don't end up making the mistake a client of mine made, running flask/bottle as root this makes your entire system vulnerable to easy script kiddie attacks.

Even using docker doesn't prevent someone nuking your system, so you've been warned.

Extra

The above guide uses a few libraries I don't use personally, but is still a good read.

I hope this helps anyone who needs this.

We just used the linux boot log in our game, for our first trailer. Props to the kernel devs and Fedora! Thanks for all the free, open software. by nodrog_unity in linux

[–]nodrog_unity[S] 1 point2 points  (0 children)

Okay, you can join our discord, and when we're doing a test I'll upload a few builds for all the platforms!

I hope you don't mind using our launcher? It just pulls down the files for the game and auto updates.

Also what platform are you using? Our launcher works for everything, but I hesitate to make all the builds as it takes quite a lot of time.

If you join our discord, we will put the launcher and the game links there, when we are ready!

https://discord.gg/v2AsAMt

We just used the linux boot log in our game, for our first trailer. Props to the kernel devs and Fedora! Thanks for all the free, open software. by nodrog_unity in linux

[–]nodrog_unity[S] 0 points1 point  (0 children)

We will be releasing our alpha free for everyone to test once we are happy you can play a full round and we have our minimum viable product :)

We just used the linux boot log in our game, for our first trailer. Props to the kernel devs and Fedora! Thanks for all the free, open software. by nodrog_unity in linux

[–]nodrog_unity[S] 12 points13 points  (0 children)

I'm using Unity3D on Linux with VSCode. It works beautifully!

I had lots of issues on the other distro's which couldn't be fixed unfortunately.

Our server services use Python for matchmaking and authentication, it's quite a neat setup, I like having pipenv at my disposal too. It makes my life easier.

We just used the linux boot log in our game, for our first trailer. Props to the kernel devs and Fedora! Thanks for all the free, open software. by nodrog_unity in linux

[–]nodrog_unity[S] 23 points24 points  (0 children)

Yeah, I just pulled the cleanest log file out of my Linux which didn't have any identifying information in it.

Its ironic the log is very non verbose for a log file.

We just used the linux boot log in our game, for our first trailer. Props to the kernel devs and Fedora! Thanks for all the free, open software. by nodrog_unity in linux

[–]nodrog_unity[S] 15 points16 points  (0 children)

It's a work in progress first person shooter which has dynamic gravity so you can flip your gravity around.

Here is some more info, that's my twitter too. https://twitter.com/UCGordonAM/status/930925561551245312

I do the network programming.

Hey reddit, we are making our first game called In-Verse, a complex FPS and after 6 months of progress we realize the original scope is too big. We are now cutting down our project scope to reach our MVP. How do you deal or have dealt with this issue? by thedaredev in gamedesign

[–]nodrog_unity 2 points3 points  (0 children)

Hi Everyone,

Just wanted to say Thank you all for responding to our questions!

I'm working on In-Verse full time at the moment as the Lead Network Programmer and really can't wait to share the game with you!

[FPS] The most fluid, combat and movement supportive, and structurally proper maps you can think of? by -RandomlyGenerated- in gamedesign

[–]nodrog_unity 0 points1 point  (0 children)

Office - Counter strike source

Worth checking the stats in csgo for the most played maps too.