Giter Club home page Giter Club logo

panqkart's Introduction

๐ŸŽ PanqKart ๐ŸŽ

screenshot

LuaCheck ContentDB Discord chat Donate

A racing game with upgradable cars, fun races with up to 12 players, and so much more.
Built by Panquesito7 (David Leal), Pixel852, Crystal741, and other Minetest contributors.

Please note that this is a work-in-progress game and is still in ALPHA stage.
More awesome features are coming in the future. Stay tuned!

๐Ÿ›  Installation ๐Ÿ› 

  • Unzip the archive, rename the folder to panqkart and place it in ../minetest/games/

  • GNU/Linux: If you use a system-wide installation place it in ~/.minetest/games/

Note

Git Software was required in the past due to Git Submodules usage.
You can freely download the ZIP file now, and all of the subtrees will be cloned (tool).

๐Ÿ Making your own maps ๐Ÿ

โ• A new guide will be created soon as well as a multiple-map system

If you want to make a new level/map for our game (or just for yourself), that's amazing! We have basic tools list below to get you started.
In the future, we will add multiple maps which will playable! Thank you for your interest in adding back to our community.

I recommend the following tools/knowledge for the same:

  • Streets is one of the greatest streets mod for Minetest out there. It's fully customizable and includes street signals, concrete, asphalt, and so much more things.
  • Map Tools is a great utility mod that includes lots of special nodes used for building, moderation, administrator pickaxe, and more.
  • Minetest Forums: Map Category, which can help you in getting inspired by other maps or levels. Don't forget to check out its licenses before doing anything!
  • WorldEdit is an ultimate in-game world editing tool that can help you build faster and better.
  • More Blocks includes 100+ special blocks with different functionalities that help you make better buildings with more efficiency.
  • Tree Capitator, which destroys the whole tree when you destroy the root trunk.

To add special modifications, such as animals, special overrides, the in-game builder privilege, etc., you may want to install the servermods modpack in your server.

Note: the maptools:white and maptools:black nodes are used when ending a race.
Hopefully, we will soon make a detailed tutorial on making your own map!

As always, if you need any help, do let us know about it and we will be glad to help!

๐Ÿ“ท Gallery ๐Ÿ“ท

Coming soon!

๐Ÿ“œ License ๐Ÿ“œ

See LICENSE.md for full information.

panqkart's People

Contributors

abhaytaras7 avatar dependabot[bot] avatar github-actions[bot] avatar imgbot[bot] avatar methro avatar niden1 avatar olliy1or avatar panquesito7 avatar pl608 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

panqkart's Issues

Insert the lobby/level schematic on start

Description

When the world generates on the first join, the lobby/level will be loaded automatically without further setup.
It will make it easier for people who wanna test it, add new changes, find bugs, etc..

Additional information

I'll be working on this very soon, but if you want to work on it, let me know in the comments. ๐Ÿ™‚

Improve/add better physics

  • Add drifting.
  • Better control/vehicle handling.
  • Make better crashing with other vehicles.
  • Limit mouselook speed (WIP).

If you have any idea of how to do this, any pull requests would be appreciated! ๐Ÿ™‚

Visual/HUD improvements

  • Remove the health/inventory if a player joins a race.
  • Do not show selectionboxes or the crosshud.
  • Add lap counter and real-time places with special font/color.
  • Improve other HUDs and their positions.
  • Add particles and effects for the cars, such as dust.

Implement multiple lap system

To make races longer, we should implement a lap, bug-free system.
We should ensure that:

  • A player can't just go back and win all laps in a few seconds by touching the node.
  • The player must pass through all the map to be able to complete one lap.
    • I was thinking of placing a particular node on the map (say on the middle map) to be able to pass to another lap.

If you have any other ideas, let me know! Thanks. ๐Ÿ™‚

Add a singleplayer, generated-tracks mode

This mode should include:

  • No lobby. I don't see a point of having a lobby if you're playing in singleplayer mode.
  • Limited time (e.g.: 40 seconds).
  • Generated tracks.
  • A checkpoint system. Each time you get a checkpoint, your time increases. The record will be saved in the player's attributes.
  • When quitting the mode, detach the player from the car and send him back to the beginning.
  • (For future releases) If there will be A.I. in a race, ask the user which mode they want.

Cleanup racing data when a player leaves

If a player's on race and leaves and is the last player from winning, the race should end immediately.
If it's not the last player to win, the data should be still properly cleaned up.

Random 360ยฐ turn on part of the track

Description

On a certain part of the track, the vehicle does a 360ยฐ yaw change without reason.
The code that's causing this seems to be on the yaw movement of the car when using mouselook.

local yaw = entity.object:get_yaw()
local yaw_delta = entity.driver:get_look_horizontal() - yaw + math.rad(90)
if yaw_delta > math.pi then
yaw_delta = yaw_delta - math.pi *2
elseif yaw_delta < - math.pi then
yaw_delta = yaw_delta + math.pi* 2
end
local yaw_sign = get_sign(yaw_delta)
if yaw_sign == 0 then
yaw_sign = 1
end
yaw_delta = math.abs(yaw_delta)
if yaw_delta > math.pi / 2 then
yaw_delta = math.pi / 2
end
local yaw_speed = yaw_delta * entity.turn_spd
yaw_speed = yaw_speed * dtime
entity.object:set_yaw(yaw + yaw_sign*yaw_speed)

Any help with this would be greatly appreciated. Thanks. ๐Ÿ™‚

Improve the car shop

  • No more use of formspecs to buy stuff. Instead, have a formspec only to showcase the things that can be bought.
  • Commands should be used to buy stuff.
  • Vehicles/accessories should have a much higher price.

Too many numbers at the end of lap times

image

This can be fixed with something like:

minetest.chat_send_player(player, string.format("Game's up! You finished the race in %.2f seconds.", time))

(Will show 69.66 seconds in the chat, 2 decimal places)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.