This is a read only copy without any forum functionality of the old Modcraft forum.
If there is anything that you would like to have removed, message me on Discord via Kaev#5208.
Big thanks to Alastor for making this copy!

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - Mjollna

Pages: [1] 2
1
Resources and Tools / Repositories migrations
« on: April 26, 2020, 09:01:16 pm »
Hello everyone!

Since Bitbucket will soon stop to support mercurial/hg repositories, and since all my tools were using mercurial, I've migrated them to git and switched the hosting to Github.

The repos are all there: https://github.com/mjollna-wow
This concerns : gltf2m2, adtconverter, gillijimproject and wowmapgen.

2
Showoff - what you are working on / [VIDEO] Coffee Induced Dreams
« on: May 25, 2018, 09:53:04 am »
Hi everyone !

As you may know, I'm part of the RIdPEF community, a group of (mostly) french speaking enthusiasts about exploration in WoW, but also about modding in the game.

On April 25th 2010, the RIdPEF decides to start a big project : a video of about twenty minutes, in order to show the creative side of this community. A little like a machinima, a little like a technical demo, a little like Snoman or the MC-Addicts videos. In short, breaking WoW for a purely aesthetic purpose.

After eight years of work, the video is now finished. So without further ado, let me introduce Coffee Induced Dreams, which we consider as the culmination of our work on the game World of Warcraft.



We also want to thank the whole modding community around the game, for the knowledge and tools gathered over time, and more specifically : Adspartan (for his Multiconverter and work on Noggit), Alram (for the wiki hosting and his work on the minimaps), as well as Schlumpf (for his huge reversing and documenting effort over the years, his contribution to many tools and among them Noggit, and for helping everyone).

More information, bonus gallery, etc. : https://ridpef.org/en/coffee-induced-dreams
Alternative link for the video :

3
Resources and Tools / WowMapGen
« on: March 19, 2018, 05:57:40 pm »
Hi ! :)

I'm publishing here a small ADT generator, that works with a bunch of images and text files as input.
It's highly experimental and I probably won't touch it again, but I think with some polishing it could be turned into something cool and useful.

Have fun with it !

https://bitbucket.org/Mjollna/wowmapgen/overview

4
Resources and Tools / gltf -> m2 converter
« on: September 10, 2017, 08:12:12 pm »
Hi there, long time no see ! :)

I've just published some naive python script, which can (normally) convert a file from Blender > gltf format > m2 (for LK).
Readme and beginning of script explain how to convert successfully.

No collisions and no animations for now, but it might be supported some day.

https://bitbucket.org/Mjollna/gltf2m2/

5
Tutorials / [TUTORIAL] [RELEASE] Forget MPQ : don't pack anymore
« on: May 21, 2012, 12:00:53 am »
Hi everyone !

Those who follow the chatbox have probably seen a few weeks ago some exe tweaking Schlumpf made, allowing (again) the Wow client to read files that are not packed into a MPQ, like Noggit does.

That really makes adt testing a lot easier/faster, so I strongly encourage everyone worldbuilding to go for it.

I'm detailing here how to reproduce it, so that there's no need to use MPQ anymore.
Again, say thanks to Schlumpf for finding it and sharing :)

How it works


In your (Windows) Wow.exe, look for the following pattern:
Code: [Select]
E8 ? ? ? ? 6A 00 E8 ? ? ? ? 6A 02You can use 010 editor, edit > search, tick "use wildcards", set to "hex bytes" and paste pattern. You should have only one entry.

You can also use this tool by Schlumpf to replace the pattern instead of 010 editor : viewtopic.php?f=59&t=1829&p=11827#p11827

Replace the beginning of the pattern with:
Code: [Select]
90 90 90 90 90 6A FFWhich gives for Windows Wow 3.3.5a 12340:
Code: [Select]
90 90 90 90 90 6A FF E8 2A EC 01 00 6A 02

The explanation for the curious ones


Quote from: "schlumpf"
Search for string "World of Warcraft\Client". Will be referenced on four places. Once with "SendErrorLogs" right behind. That's a call to SRegLoadValue and SRegSaveValue. From there, go up. You will see two calls to StormSetOption, one with first argument being 10, the other one being 11.
Right in between, there will either be a call to two functions or an inlined function containing an if. On windows, it will most likely not be inlined.
If there is no branch, dive into the second function called. That one should contain a branch.
That branch is for checking the command line for a different data folder given. You're interested in the functions above. Those are SFile::DisableSFileCheckDisk(); and SFile::EnableDirectAccess(0);.
You want to remove the call to DisableSFileCheckDisk and change the argument for EnableDirectAccess to something having bits 1 and 2 set.

Some notes


Refreshing the map


Ok, there's probably a better method for that, but that's the quickest I've come up with.
If you want to quickly refresh your adts without quitting the client on your favorite private server, you can :

  • Paste your newly edited files in your wow folder.
  • Click this macro twice:
    Code: [Select]
    .go -17000 -17000 0 0
    .go [your coords on your map]
That first teleports you in an empty continent area (ie : fast to load), and then re-teleports you on your map.
The map change makes the client reload the adts from file.

Other advice


If you have two installs (one for Noggit and one for Wow) you can have both programs opened at the same time and do some copy/pasting/refresh to see your changes ingame quickly.

Be sure to always make a copy of your adts in another safe place from time to time. You never know, some quick file overwriting can happen quickly.

TL;DR


  • Download this wow.exe (Windows 3.3.5a 12340)
  • Save you original Wow.exe, paste the one you've downloaded in your Wow folder.

6
Hi everyone <!-- s:) -->:)<!-- s:) -->

So it's me posting, but it's really collaborative work, so...
- Problem fixing : Schlumpf and hanfer.
- File parsing/saving : Gillijim Project (so, well, me).
- Working cmd line tool with all this : hanfer.

The tool fixes ground doodads display on adt.
Usage is really simple : drop a single adt on program, or make a bash/batch for multiple files processing.

It needs some testing, so if anything looks wrong you can write it in the thread.
Don't forget to save your adts before wildly dropping them on exe... you never know <!-- s:) -->:)<!-- s:) -->

Important note :
The program generates a new file named like the input adt, but with the suffix "_new", so the original file is not overwritten.

Have fun !

Updated version (source included) :
Edit 2017-12-31 : Ok links are long dead, so I include the file as attachment.

7
Resources and Tools / [PROJECT] Gillijim Project
« on: April 05, 2012, 02:47:43 am »
Hi everyone :)
 
I realise I've talked here and there about Gillijim Project (GP) on the chatbox, on some posts, etc., but I haven't written any general message to explain a little more what my current work is about, so here it is.

I post it here since FuTa and GP are very closely linked.

So... In November, some friends (hi Gamh !) and I decided to convert 2003 Wow files, which are in a slightly different format than lk/cata/mop one. The reasons for doing that are :
- It's fun (to us at least).
- We like to explore retail maps, so converting alpha would be really cool to see maps history/evolution and details.
- I'm learning c++ and coding in general, so that project is a good means to get better and try out things.
 
I've decided to concentrate on adt first, since it's the format I know best among Wow's. Gamh is working hard on wmo at the moment.
After a few weeks (months ?) thinking about the way I could do this (yeah I'm taking my time), I finally decided to take a different approach we'd taken for the Adt converter back last summer. The lk -> cata converter is "just" a converter, the code really can't do anything else, and that's a little too bad imho.
So this time, I've tried to make it better and, if possible, try to make something that could be more general than an alpha to lk/cata adt conversion.
 
So here's the project current state :

- As for alpha conversion, terrain and textures can now be successfully converted to Cataclysm (I still need to find "holes" information though). Objects placement is missing, but it's currently work in progress and if chunks related to m2/wmo are not too different in alpha, that should be possible soon.
 
- The core is still in heavy WIP, and I know I'm not using the best solutions to handle what GP can do. The reasons are either because I haven't had time to change it, or I haven't learned how to make it better. I'm changing the way things are done more or less all the time, learning, reading, googling, asking for advice (thanks to everyone who've helped, people on #modcraft and Schlumpf especially). I'm also a beginner at oop/design, so I'm doing my best, but I'm not sure my way is the best way to go at all :)
 
So far GP can handle this :
* Lk Adt loading/writing.
* Alpha wdt (and incorporated adt) loading.
* wdt loading/writing.
* wdl loading/writing.
* Terrain/textures Cata adt loading.
* Chunk export.
* Some Chunks import/conversions.
 
- Something I was hoping for but not really expecting has happened since I've started to work on this project : other people (Gamh and hanfer so far) have started to develop other programs based on GP.
 
So far, here are the projects that use some GP code :
* FuTa.
* The actual incomplete alpha -> lk converter.
* GruulMe, a wdt editor by Gamh : viewtopic.php?f=59&t=1689
* My import/export mh2o tool.
 
Thanks to you two for using parts of GP, it makes me really happy to see all those efforts I put into it are useful to people :)
 
The code is public, it's there :
https://bitbucket.org/Mjollna/gillijimproject/

You can also check GP wiki on Bitbucket to see what ideas I would like to implement next, what's incomplete, etc.

8
Resources and Tools / [TOOL] Mh2o exporter & importer
« on: March 16, 2012, 02:10:31 am »
Hi guys,
 
Some of you know that I've started some piece of code to convert 2003 alpha adt files.
Actually, it's not only a converter, but can also be used as a base to make other programs related to adt tweaking.
It's here if you're curious : https://bitbucket.org/Mjollna/gillijimproject
It's highly unfinished, probably clumsy... but it's the best I can do right now, it will get better over time. That's also an exercise for me to get better at programming and extend my knowledge of Wow files.
 
Consequently, I decided to use it to create a small utility for quick mh2o handling, until we can manage it correctly in Noggit.
 
# Initial problem :
 
- It's a pain having to use All Water LK every time you need to save water, especially when the adt has different levels/kinds of liquids in it.
- It's also long to swap manually mh2o alone from one adt to another (ok, that doesn't happen very often, but sometimes it can be useful).
 
# Purpose :
 
- Save water chunk and being able to re-import it in any adt quickly.
- Make it possible to have a bash/batch file for multiple files processing.
 
# How it works :
 
- mh2oExport : saves mh2o in a separate file with extension .mh2o.

Usage :
Code: [Select]
mh2oExport.exe adtFileName_xx_yy.adt
- mh2oImport : imports mh2o in an existing adt.
As a bonus, it reintegrates mh2o at the right place (and subsequently re-does all offsets and calculates the right chunk size), and not at the end of the file.
It creates a new adt with the extension ".adt_new" to avoid the source adt to be inadvertently erased.

Usage :
Code: [Select]
mh2oImport.exe adtFileName_xx_yy.adt mh2oFileName.mh2o
Note that apart from mh2o (and mcin offsets), all other chunks will remain untouched. It means that if you have mclq chunks into your adt they will be kept, and you probably won't get the result you expect. As far as I remember, you can use the "remove all water information" option from All Water LK to get rid of the problem.
 
Both programs are meant to work with pre-Cata adts... When Cata parsing is finished (= not too soon, it's not my priority right now) I'll make a Cata version, or integrate 4.x somehow in the existing ones.

The whole thing is still experimental. I've tested with lots of different adts, but I may have forgotten something somewhere. Backup your files before playing with it, and let me know about bugs ! :)

# Source & Windows exe :

http://gaming.mjollna.org/static/docs/mh2o_utilities.zip

Source only includes main, to compile just clone the repo and replace main by one file or the other.
 
Have fun !
 
Mjollnà

9
Level Design / Re: [QUESTION] Growing a Map
« on: February 01, 2012, 12:40:48 am »
I think it's ok that way :)

36 Adts too small... When I think about my own 6 Adt project I still haven't finished in 6 months... *sigh* xD

10
Software Development / Re: [QUESTION] Noggit compile instructions?
« on: January 19, 2012, 10:44:27 pm »
As far as I know both are separate projects, so you don't need anything from mpqfs-stormlib to compile Noggit.

If you're ok with the libraries then you should be able to compile.

11
Software Development / New on board...
« on: January 18, 2012, 08:53:51 pm »
Hi there :)

Mmh, well, I thought it would be nice to post here... Got access today to this part of the forum.

In a few words, here's the story :
In early September, I asked Schlumpf if there was a way I could contribute to Noggit. At the time, I had never seen a line of c++, so he gave me some references and advice to start, and told me to come back later.
So, for 4 months I read something like a thousand pages on the subject (2 books and a lot of googling), and made small programs to train.
Some of you may have seen the dialog we had on the chatbox on Christmas night. At this time, Schlumpf granted me access on the (then private) repo.
It took me some time to understand things better and compile...
Just before he left, I agreed on making a nice settings window for the Qt version. And even if I'm deadly slow (it should get better over time, but that's really hard at the moment), I really intend to contribute.

As I posted in the general board a few weeks ago, I'm actually off to Berlin from january 20th to 27th. I don't know if I'll get wifi access somewhere or not, and if I'll have some time there, so I guess I'll be more present after that date.

I'm almost always on irc Quakenet, so if there's a chan somewhere it would be wonderful.
Otherwise, on msn I'm mjollna.wow@gmail.com

12
Random / IRL meeting, anyone ?
« on: November 23, 2011, 01:39:14 am »
Hi everyone !

At the end of January (20th to 26th included), it looks like I'm going to Berlin.
As many people on this forum seem to live in Germany, I was wondering if some of you would be interested in meeting / having a coffee / going to a restaurant or something like that.
I'm aware Germany is a big country and none of you may actually live close to Berlin, but hey, you never know :)
I should have a lot of free time during the week, so I can consider some train travel on a moderate distance to reach another city.

So if you're interested just tell me :)

13
Tutorials / [TUTORIAL] Creating non-animated custom M2 with mdlvis
« on: October 26, 2011, 07:58:12 pm »
Hi <!-- s:) -->:)<!-- s:) -->

Two weeks ago I started to discover M2 format and M2 making/editing. I think I have now a working process to create a non-animated custom model more or less from scratch, so I make a post here to share how I do it. If you have ideas on how to make it better, I'm totally open to suggestions.

Thanks a lot to Vel for all the tips in the chatbox and various posts over the forum, and to Tigurius for the converting tools & tutorial, it helped me greatly to create my own model and consequently write this post.

I don't use Blender/3dsMax at all here, I tried a little with Blender/M2i but I've had lots of problems converting back to M2, so finally I feel more confortable with mdlvis.

Tools used :
- mdlvis 0.40 eng version : <!-- l -->viewtopic.php?f=59&t=790&start=0<!-- l -->
- ConverterMDX_lazy.exe : <!-- l -->viewtopic.php?f=59&t=785&start=0<!-- l -->
- CollisionAdder.exe (modified version 2011-10-27 - topic page 2) : <!-- l -->viewtopic.php?f=59&t=788&start=0<!-- l -->
- Optional, if you make custom textures : any image editing software like Gimp or Photoshop and a blp converter.
And that's all <!-- s:) -->:)<!-- s:) -->

Preparing a model for editing

I made one that I think I'll reuse every time from now on, so I share it to speed up things a little.
It already has 3 textures linked in it and some starting vertice to make further editing easier. It's based on Wow 1.x NewElfRuin02.
Here it is : http://gaming.mjollna.org/docs/m2_base_model.zip[/url]

It's interesting to have such a model since it passes conversion to M2 whatever the edits in mdlvis (or so it seems to me), and apart from changing/adding textures, you don't have to edit the mdl anymore.

However, I post the method I used to make it, in case you'd be interested in doing that for another model :
- mdlvis can open Wow 1.x M2 models directly. So choose a model you like from a 1.x version and open it in mdlvis.
- If you want a more or less blank model, delete every geosets except one. In the last one, leave a few vertice to make later editing possible.
- Save as mdl.
- Open the mdl file with a text editor.
- Follow this tutorial : <!-- l -->viewtopic.php?f=20&t=32<!-- l -->
- Open in mdlvis again, check if everything looks ok, save as mdx.
- Try converting the file (see the last paragraph of this post). If everything looks ok ingame then you're done <!-- s:) -->:)<!-- s:) -->

Editing the model

You can follow this nice tutorial for mdlvis. It has pretty much every feature covered, even animations which I haven't tried yet :
<!-- m -->http://www.hiveworkshop.com/forums/3d-m ... ng-179193/<!-- m -->

Some things I find useful to know :

Vertice and modeling

- To add vertice, you can extrude from a face or a group of faces. Copy/paste vertice or faces is also very very useful.

- Be careful to keep you model clean : delete free vertice, don't add unnecessary faces, keep the general triangle shapes as nice and simple as possible.

- I've tried the "optimize" function and it seems to work nicely, but I'd make a backup save and ingame test before/after every time anyway just to be sure.

Textures

- To add a new texture : save as mdl, add the texture path in the mdl file and link it to a geoset. Some copy-pasting will do the trick.

- If a face you've just created from 3 vertice looks transparent even though it has a texture (F button), select the face (click in the middle of it) and click the "-1" button to flip the normal.

- If group of faces looks darker/lighter than it's closest neighbours (it can happen if you detach a group of faces as a new geoset for example), try selecting all those faces as well as some other ones nearby with the same orientation and click the "average normals" button.

Other

- Using shortcuts in mdlvis can save you a lot of time.
There's one I've found by luck (and doesn't seem to be indicated in the menus ?) : middle mouse button toggles edit/rotation tools, it's very handy.

Converting and adding collisions

- For conversion, I use the following command on Windows :
Code: [Select]
ConverterMDX_lazy.exe mymodel.mdx 0.02(the 0.02 is a scaling option).

- For collisions, just copy the M2 model you've just converted and it's skin file in the collision_adder.exe (the 2011-10-27 modified version, which changes the way bounding box normals are created) folder, drop the M2 on the program and you're done.

- If you experiment crashes or weird behaviour ingame, try to look exactly where it happens and correct the model. It happened to me mostly because of corrupted vertice or free vertice I hadn't seen, and once deleted + redone it was all ok.

Have fun <!-- s:) -->:)<!-- s:) -->
Feedback welcome as usual.

---------------
2011-10-27 small edit : changed Collision Adder ref. to indicate the latest version.

14
Showoff - what you are working on / [SHOWOFF] Custom M2 : Road
« on: October 25, 2011, 11:21:21 pm »
Hi there !

So I made my first custom model, as some of you may have seen on the chatbox. It's complete now, it has custom collisions, so I thought I would share it. It has no animations, but for a road it's pretty normal <!-- s:) -->:)<!-- s:) -->

It really fits my own zone, so I don't know if it will be useful to someone else, but in case, it's available <!-- s:) -->:)<!-- s:) -->

I used Blizz unmodified textures, so they should be already in 3.3.5 files. However, to avoid any problems I've included them in the zip file with the right relative path from the model.
There's also the mdx if some of you want to play with it and change the model.



The edges are a little different than what's on the video, I had a corrupted vertice in each angle (copy/paste) and I had to redo them tonight.

Normally the model should work fine in 3.3.5, at least on my install it's all ok. If you have problems with it let me know.

Happy downloading !

http://gaming.mjollna.org/docs/road.zip

15
Level Design / [SOLVED] Ground effects question
« on: October 10, 2011, 10:56:24 pm »
Hello <!-- s:) -->:)<!-- s:) -->

I have a question about ground effects (nodxt/texture effect)...
I'm trying to create my own version of ED Canyon (yeah I know, not quite original, but I want to do it anyway <!-- s:) -->:)<!-- s:) --> ), and I've run into a problem (?) regarding ground effects.

On untouched Blizzard texturing, it seems that it is possible to get several texture effects on a single chunk.
Here's an example of it :
- ingame :

- in Noggit :

As you can see, the clovers that are linked to the dark grass texture meet the rocks attached to the dirt texture. On the second screenshot you can see the chunk limits.

However, when I edit the textures with Noggit (104 and beta), then only the ground effects attached to the base layer show ingame where I edited.
Here's an example of that behaviour :

On one chunk, it's the grass I've set as "no alpha/base" one, so the clovers show everywhere, but no rocks where I've painted a quick dirt surface over it.
On the other one it's the contrary, dirt as base means I only have rocks showing up and no clovers.

-----------

Here's what I've tried as workaround/investigating :

- MTEX has only 4 textures. Not more, no duplicates, so everything seems alright there.

- EffectIDS are correctly set in the adt in Taliis Textures menu (which also shows 4 textures as it should be). GroundEffectTexture.dbc is ok, or the ground effects wouldn't show anywhere in the adt.

- MCLY seems to be ok. I think I checked on 5 different attempts/edits if the ground effects were set properly. When I paint with a texture that is already on the chunk, the IDs don't seem to change, and they're ok. If it's a new texture that wasn't before on the adt, then it looks like the ground effect ID is set to 0. However, I've then tried to change the EffectID for all textures in Taliis to 0 in textures menu, save, close, re-open in Taliis, re-change it to the correct values, save. Then the IDs seemed right on every chunk, but it still didn't help.
I've also tried to set the IDs manually in 010 Editor + template, but of course, same kind of operation = same result, i.e ground effects from base layer only appear ingame.
So would the problem be somewhere else ?

- With Taliis I've tried texture exporting, more or less playing with png, re-importing... without obtaining the desired effect.

- Various tests with MCNK editor in Taliis.

- I've also tried to change the map I was working on, for one that has absolutely no Blizz texturing (creation from scratch) and I had the same problem after attaching 3 different ground effects to 3 of the 4 textures I had in the adt. And since I had imported the textures from png on that map, I really had exactly the same ground effects on the whole adt, and it didn't look good at all. The opacity/alpha of layers above didn't seem to have any effect at all on the amount of ground effects coming from the base texture.

-----------

The only workaround I'm thinking about at the moment would be to duplicate the base texture under a new name, attach the main ground effect I'd like on a particular chunk to it, and finally swap it on every chunk where needed, but it doesn't really solves the problem (and it's not really a "clean" solution).
--> Edit : or just change the texture effect id on the base texture. Better & simpler I guess.

This time I'm really out of ideas... and I have a strong feeling that I'm not looking in the right direction or that I missed something. So if someone has a hint that would be absolutely great :)

Thank you very much ! And thx to Vel for trying to help on the chatbox today.

Pages: [1] 2