Code Monkey home page Code Monkey logo

w3x-to-vmf's Introduction

#W3X to VMF

A Warcraft III map to DotA 2 map/addon converter

WriteVMF.py

Requires war3map.w3e to be in the /input/ folder

Optionally uses the PIL Python library to generate funky images of the heightmap

A modified fork of BHSPitMonkey's vmflib is provided by this repository. Link to the original vmflib repo: http://github.com/BHSPitMonkey/vmflib

w3x-to-vmf's People

Contributors

penguinwizzard avatar renoly2 avatar sinz163 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  avatar  avatar  avatar

Watchers

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

w3x-to-vmf's Issues

Read_doo parser

Having a .doo parser (doodad / trees) parser, along with a script to add it to the vmf generation would serve a good use in aiding map devs to get a good copy from wc3

ui.py throws a Tkinter exception when creating a topdown picture for some maps

Sometimes it can happen that ui.py throws a Tkinter-related exception about not being able to display the topdown picture. After that, a message in the console is displayed about the program requesting to be terminated in an usual way. Finally, the GUI crashes.

I do not know how to reliably reproduce this bug. I have encountered it a few times yesterday, but today everything is working fine again, so I did not write down the exact exception.
It happened when opening some of the bigger maps, thus it might possibly be related to Issue #1.

ui.py throws a MemoryError when creating a topdown picture for specific maps

In some cases it can happen that ui.py throws a MemoryError when opening some bigger maps and creating a topdown picture for them. This doesn't happen for everybody (e.g. I can open the Trolls'n Elves map just fine, but when SinZ does the same, a MemoryError is raised).

It doesn't appear to happen when running the topdown viewer on the map directly.

mpyq: OverFlow error when trying to open a wc3 map sometimes

Some maps cause mpyq to throw an OverFlow error due to trying to read too much data from the file. This can happen when the number of bytes it tries to read are bigger than what can be specified by a 4 byte integer which can happen easily on 32 bit systems.
The error can look like this: "OverflowError: Python int too large to convert to C long"

Because no WC3 map can hold more than 4 GiB of data, this is could be an attempt by the author of the map to prevent people from opening the map.

displacement.py issue: Order of DispInfo entry data in created vmf file is incorrect

The order in which the displacement info is listed in a dispinfo entry appears to be incorrect and not correctly sorted by row number.

Example: "row0", "row1", "row2", "row3", "row4", "row5", "row6", "row7", "row8", "row9", "row12", "row13", "row10", "row11", "row16", "row14", "row15"
(disregarding the data that followed after each row number)

Questions to be considered: Is the bug caused by incorrectly creating and adding the displacement info in VmfGenerators/displacement.py, or is it actually an issue in the underlying vmflib code?

Does it actually cause any bugs when compiling or testing the map, or is it just a minor inconvenience?

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.