NES development tool made with Python and Lua

Overview

NES Builder

NES development and romhacking tool made with Python and Lua

Current Stage: Alpha

_

Features

  • Open source
  • "Build" project, which exports various items and assembles project.asm if it exists.
  • Palette editor
  • Import CHR banks from .chr, .png, .png (nesmaker).
  • Export CHR banks to .png with chosen palette.
  • Metatile creator
  • plugin system (Lua/Python)
  • Integrated custom 6502 assembler (sdasm)

Installing

Download the latest release. The NESBuilder_Setup.exe installer will allow you to download and install the latest compoents:

  • NESBuilder Executable
  • NESBuilder Source
  • Installer Source
  • Start Menu Shortcuts

Building / Running From Source

Requirements:

  • Windows
  • Python 3

Python packages: You can use "install dependencies.bat" to install these. Make sure you run "as administrator".

  • lupa
  • pyinstaller
  • pillow
  • numpy
  • PyQt5
  • QScintilla

Installation Issues

Issue: In Windows 10, when installing Python 3 from the Windows store, importing PyQt5.QtWidgets causes an error: "ImportError: DLL load failed: The specified module could not be found." Solution: None yet :(

Issue: When pip attempts to install lupa, there are many errors, and one of them near the bottom says "error: Microsoft Visual C++ 14.0 is required. Get it with "Build Tools for Visual Studio": https://visualstudio.microsoft.com/downloads/" Solution: using cholatey: choco install visualcpp-build-tools --version=14.0.25420.1 Installing this appeared to hang, but it actually required pressing enter. It's possible the latest version might work instead, and other installations untested.

Issue: Unable to get NESBuilder working form source. Workaround: If you can run the binary NESBuilder.exe you can pass a parameter to run the latest version of the script. "NESBuilder.exe main.lua" The binary won't be updated as often, and this may not work or cause errors, but it's possible you can still try out features without waiting for a new binary.

Plugins

Plugins are Lua scripts, but can also import Python scripts.

See sample plugins for more information.

You might also like...
Gba-free-fonts - Free font resources for GBA game development
Gba-free-fonts - Free font resources for GBA game development

gba-free-fonts Free font resources for GBA game development This repo contains m

A Python utility belt containing simple tools, a stdlib like feel, and extra batteries. Hashing, Caching, Timing, Progress, and more made easy!
A Python utility belt containing simple tools, a stdlib like feel, and extra batteries. Hashing, Caching, Timing, Progress, and more made easy!

Ubelt is a small library of robust, tested, documented, and simple functions that extend the Python standard library. It has a flat API that all behav

A Python script made for the Python Discord Pixels event.

Python Discord Pixels A Python script made for the Python Discord Pixels event. Usage Create an image.png RGBA image with your pattern. Transparent pi

this is a basic python project that I made using python

this is a basic python project that I made using python. This project is only for practice because my python skills are still newbie.

Analisador de strings feito em Python // String parser made in Python

Este é um analisador feito em Python, neste programa, estou estudando funções e a sua junção com "if's" e dados colocados pelo usuário. Neste código,

python based clash stars made by grade 7 and 5
python based clash stars made by grade 7 and 5

clash_stars python based clash stars made by grade 7 and 5 How to play: PLAYER ONE (LEFT PLAYER) Move: W,A,S,D Shoot: SHIFT PLAYER TWO (RIGHT PLAYER)

A lightweight and unlocked launcher for Lunar Client made in Python.

LCLPy LCL's Python Port of Lunar Client Lite. Releases: https://github.com/Aetopia/LCLPy/releases Build Install PyInstaller. pip install PyInstaller

These are After Effects and Python files that were made in the process of creating the video for the contest.

spirograph These are After Effects and Python files that were made in the process of creating the video for the contest. In the python file you can qu

Releases(v2021.4.8-alpha)
  • v2021.4.8-alpha(Apr 8, 2021)

  • current(Aug 15, 2020)

    *** This version does not run without administrator privileges. Please use latest release instead.

    NESBuilder_Setup.exe will download the latest installer and run it, so you can keep using this to update. Note: Due to the nature of how this works, both the installer and program itself will likely trigger antivirus warnings.

    Source code(tar.gz)
    Source code(zip)
    NESBuilder_Setup.exe(47.50 KB)
  • v2020.8.14-alpha(Aug 14, 2020)

    EDIT: This release no longer works and has been removed. Please use latest release instead.

    A very early release but usable for certain small tasks, and I want to show off how it's coming along. This is a web installer and will grab the newest version, though it (currently) will not work if I add or remove some files.

    Source code(tar.gz)
    Source code(zip)
Python Projects is an Open Source to enhance your python skills

Welcome! 👋🏽 Python Project is Open Source to enhance your python skills. You're free to contribute. 🤓 You just need to give us your scripts written

Tristán 6 Nov 28, 2022
Movie recommend community

README 0. 초록 1) 목적 사용자의 Needs를 기반으로 영화를 추천해주는 커뮤니티 서비스 구현 2) p!ck 서비스란? "pick your taste!" 취향대로 영화 플레이리스트(이하 서비스 내에서의 명칭인 '바스켓'이라 함)를 만들고, 비슷한 취향을 가진

2 Dec 08, 2021
SWS Filters App - SWS Filters App With Python

SWS Filters App Fun 😅 ... Fun 😅 Click On photo and see 😂 😂 😂 Your Video rec

Sagar Jangid 3 Jul 07, 2022
Rofi script to minimize / unminimize multiple windows in qtile

Qminimize Rofi script to minimize / unminimize multiple windows in qtile Additional requirements : EWMH module fuzzywuzzy module How to use it : - Clo

9 Sep 18, 2022
Traits for Python3

Do you like Python, but think that multiple inheritance is a bit too flexible? Are you looking for a more constrained way to define interfaces and re-use code?

121 Nov 15, 2022
ViberExport - Export messages from Viber messenger using viber.db file

📲 ViberExport Export messages from Viber messenger using viber.db file ⚡ Usage:

7 Nov 23, 2022
Python-Kite: Simple python code to make kite pattern

Python-Kite Simple python code to make kite pattern. Getting Started These instr

Anoint 0 Mar 22, 2022
Standard mutable string (character array) implementation for Python.

chararray A standard mutable character array implementation for Python.

Tushar Sadhwani 3 Dec 18, 2021
NCAR/UCAR virtual Python Tutorial Seminar Series lesson on MetPy.

The Project Pythia Python Tutorial Seminar Series continues with a lesson on MetPy on Wednesday, 2 February 2022 at 1 PM Mountain Standard Time.

Project Pythia Tutorials 6 Oct 09, 2022
General tricks that may help you find bad, or noisy, labels in your dataset

doubtlab A lab for bad labels. Warning still in progress. This repository contains general tricks that may help you find bad, or noisy, labels in your

vincent d warmerdam 449 Dec 26, 2022
Get a list of all offline/online members in a discord server

Discord server insights Get a list of all offline/online members in a discord server. Uses Selenium to crawl invite links. Config Download Chrome driv

Prakhar Gurunani 3 Oct 21, 2022
Animations made using manim-ce

ManimCE Animations Animations made using manim-ce The code turned out to be a bit complicated than expected.. It can be greatly simplified, will work

sparshg 17 Jan 06, 2023
This is a repository containing the backend and the frontend of a simple pokédex.

Pokémon This is a repository containing the backend and the frontend of a simple pokédex. This is a work in progress project! Project Structure 🗂 pok

André Rato 1 Nov 28, 2021
A python package template that can be adapted for RAP projects

Warning - this repository is a snapshot of a repository internal to NHS Digital. This means that links to videos and some URLs may not work. Repositor

NHS Digital 3 Nov 08, 2022
Diff Match Patch is a high-performance library in multiple languages that manipulates plain text.

The Diff Match and Patch libraries offer robust algorithms to perform the operations required for synchronizing plain text. Diff: Compare two blocks o

Google 5.9k Dec 30, 2022
Streamlit — The fastest way to build data apps in Python

Welcome to Streamlit 👋 The fastest way to build and share data apps. Streamlit lets you turn data scripts into sharable web apps in minutes, not week

Streamlit 22k Jan 06, 2023
One Ansible Module for using LINE notify API to send notification. It can be required in the collection list.

Ansible Collection - hazel_shen.line_notify Documentation for the collection. ansible-galaxy collection install hazel_shen.line_notify --ignore-certs

Hazel Shen 4 Jul 19, 2021
Code repository for the Pytheas submersible observation platform

Pytheas Main repository for the Pytheas submersible probe system. List of Acronyms/Terms USP - Underwater Sensor Platform - The primary platform in th

UltraChip 2 Nov 19, 2022
Gaia: a chrome extension that curates environmental news of a company

Gaia - Gaia: Your Environment News Curator Call for Code 2021 Gaia: a chrome extension that curates environmental news of a company Explore the docs »

4 Mar 19, 2022